部署Aurelia / Node应用程序时需要什么?

我已经构build了一个Aurelia应用程序,但是我不确定需要将哪些内容推送到生产服务器。 我已经阅读了Node,并且开始更加了解它。 如果我们只是推送dist文件夹(捆绑文件夹),index.html和package.json,服务器是否自动使用json文件来下拉相应的包? 或者我们必须在服务器的CLI上运行npm install来下载这些软件包? 如果我们必须这样做,那么我假设我们必须用jspm来做同样的事情。

另外,与json文件一起,我们是否需要将config.js推送到生产环境?

编辑

我只是运行gulp导出,并使用以下命令生成一个导出文件夹:

  1. dist文件夹
  2. jspm_packages文件夹
  3. config.js
  4. 的index.html
  5. favicon.ico的

我复制所有这些文件并将它们投入生产。 第一个错误,我得到它在main.js 404

这是我的bundles.js文件

module.exports = { "bundles": { "dist/app-build": { "includes": [ "[**/*.js]", "**/*.html!text", "**/*.css!text" ], "options": { "inject": true, "minify": true, "depCache": true, "rev": false } }, "dist/aurelia": { "includes": [ "aurelia-framework", "aurelia-bootstrapper", "aurelia-fetch-client", "aurelia-router", "aurelia-animator-css", "aurelia-templating-binding", "aurelia-polyfills", "aurelia-templating-resources", "aurelia-templating-router", "aurelia-loader-default", "aurelia-history-browser", "aurelia-logging-console", "bootstrap", "bootstrap/css/bootstrap.css!text", "fetch", "jquery" ], "options": { "inject": true, "minify": true, "depCache": false, "rev": false } } } }; 

我很困惑,为什么它不加载我的nprogress栏。 我得到的404它寻找appName / jspm_packages / github / rstacruz-nprogress。 为什么不自动将其configuration为捆绑/导出? 我如何解决它自动包含我带入的所有库的位置?

运行命令gulp export 。 它将捆绑应用程序,并将必要的文件(index.html,config.js等)复制到export文件夹。 然后,只需将导出文件夹复制到服务器。 生产中不需要安装软件包。

编辑

当你安装一个软件包,比如nprogress,你必须把它包含到其中一个软件包文件中。 bundle是在build/bundles.js中configuration的。 aurelia导航框架configuration了2个软件包,一个用于aurelia库,一个用于应用程序的其余部分。 你也可以创build更多的捆绑,如果你想。 要将包添加到包文件中,只需将其名称添加到特定数组中,例如:

 //... "dist/aurelia": { "includes": [ "aurelia-framework", "aurelia-bootstrapper", "aurelia-fetch-client", "aurelia-router", "aurelia-animator-css", "aurelia-templating-binding", "aurelia-polyfills", "aurelia-templating-resources", "aurelia-templating-router", "aurelia-loader-default", "aurelia-history-browser", "aurelia-logging-console", "bootstrap", "bootstrap/css/bootstrap.css!text", "fetch", "jquery", "nprogress" ], //... 

在上面的例子中,我将nprogress添加到nprogress包中。 您可以将其添加到app-build包中,甚至可以为nprogress创build另一个包。

现在,当您运行gulp gulp export ,nprogress将被捆绑到aurelia – ######。js文件中,并且它将准备好在生产中工作。