如何将 polymer cli v-2.0 与 node js 和 express 一起用于制作应用程序?

how can I use polymer cli v-2.0 with node js and express for making app?

我已经安装 polymer-cli 并设置了一个 Express 服务器。如何使用 Express 运行 Polymer 代码?

Routing with Polymer and Express - 这个 link 为你工作 运行 Polymer 代码 Express并设置 Express.

// Node.js notation for importing packages
var express = require('express');

// Spin up a server
var app = express();

// Serve static files from the main build directory
app.use(express.static(__dirname + '/build/bundled'));

// Render index.html on the main page, specify the root
app.get('/', function(req, res){
    res.sendFile("index.html", {root: '.'});
});

// Tell the app to listen for requests on port 3000
app.listen(3000, function () {
    console.log('Example app listening on port 3000!');
});

Whosebuguser 给出的答案是正确的。只是澄清我发现的内容,以便新手可以跟进。

Polymer Cli 是一个独立的工具:也就是说,您不需要任何其他东西就可以 运行 一个 Polymer 应用程序。它有自己的网络服务器并监听端口以服务请求。

所以当你执行 polymer serve --open 您正在为您的 Polymer 应用提供服务 http://127.0.0.1:8081/components/polymer-starter-kit/

现在您已经开发了您的应用程序,是时候将它部署到网络服务器了,因为 polymer cli 不是网络服务器。

这是需要部署的部分。 您现在必须构建此应用才能部署

我们polymer build。这会准备应用程序部署到

下的单独构建文件夹
build/
    es5-bundled...

我们现在需要获取这个捆绑文件并部署到网络服务器上。这独立于 Polymer Cli,您可以选择要公开的端口等。

在这种情况下,根据您的定义,您希望部署在 express 上,它是 node.js.

之上的 Web 服务器

顶部的代码解释了您将用于在 node.js 之上以 express 方式部署聚合物捆绑应用程序的实际代码。

pm2 对此进行了抽象,您可以 运行 将其作为一项服务与所有 Web 服务器好东西一起使用。所以我们现在可以使用 pm2 来 运行 Web 服务器应用程序而不是默认的 node.js.

两种部署方式都是可能的。

  1. 在同一个解决方案中同时托管 Web 服务器应用程序和 Polymer 应用程序。
  2. Web 服务器托管应用和 Polymer 应用有不同的应用

当您有不同的应用程序时,您会增加仅将构建下的文件复制到要托管的 Web 服务器的开销,但它更干净并将源与部署的代码分开,类似于支持的技术,代码不同于编译库。