aurelia-cli 生产构建错误
aurelia-cli production build error
我创建了一个 aurelia 插件(基于 skeleton-plugin),它由一个带有 .js
和 .html
文件的自定义元素组成。
我在使用 aurelia cli 创建的另一个 aurelia 客户端应用程序中使用它。它与 npm 一起安装(来自本地 nexus 仓库)。
为了让客户端应用程序找到插件,我必须将以下内容添加到 aurelia.json
文件
{
"name": "@some-scope/some-plugin",
"path": "../node_modules/@some-scope/some-plugin/dist/amd",
"main": "some-plugin"
}
这在开发中工作正常,但在尝试从服务器构建和 运行 生产版本时出现问题。
构建 I 运行: au build --env prod
完成且没有错误。接下来,我将 scripts
文件夹和 index.html
复制到服务器根目录。
当我加载使用该插件的页面时,我在浏览器的开发工具中收到以下错误
GET http://127.0.0.1:8080/node_modules/@some-scope/some-plugin/dist/amd/some-plugin.html 404 (Not Found)
它正在尝试从节点模块文件夹加载插件 html 文件。我所期望的是 html 需要
已捆绑到捆绑文件 vendor-bundle.js
。
我是不是遗漏了什么?
Aurelia cli 仅跟踪主文件中的依赖项 some-plugin.js
。
这意味着所有 html/css 文件都不会被跟踪和捆绑。如果您没有在主 js 文件中明确导入它们,您的其他 js 文件也可能会被忽略。
为了安全起见,加载插件时,请告诉 cli 捆绑所有附加文件。
{
"name": "@some-scope/some-plugin",
"path": "../node_modules/@some-scope/some-plugin/dist/amd",
"main": "some-plugin",
"resources": ["**/*.{js,html,css}"]
}
我创建了一个 aurelia 插件(基于 skeleton-plugin),它由一个带有 .js
和 .html
文件的自定义元素组成。
我在使用 aurelia cli 创建的另一个 aurelia 客户端应用程序中使用它。它与 npm 一起安装(来自本地 nexus 仓库)。
为了让客户端应用程序找到插件,我必须将以下内容添加到 aurelia.json
文件
{
"name": "@some-scope/some-plugin",
"path": "../node_modules/@some-scope/some-plugin/dist/amd",
"main": "some-plugin"
}
这在开发中工作正常,但在尝试从服务器构建和 运行 生产版本时出现问题。
构建 I 运行: au build --env prod
完成且没有错误。接下来,我将 scripts
文件夹和 index.html
复制到服务器根目录。
当我加载使用该插件的页面时,我在浏览器的开发工具中收到以下错误
GET http://127.0.0.1:8080/node_modules/@some-scope/some-plugin/dist/amd/some-plugin.html 404 (Not Found)
它正在尝试从节点模块文件夹加载插件 html 文件。我所期望的是 html 需要
已捆绑到捆绑文件 vendor-bundle.js
。
我是不是遗漏了什么?
Aurelia cli 仅跟踪主文件中的依赖项 some-plugin.js
。
这意味着所有 html/css 文件都不会被跟踪和捆绑。如果您没有在主 js 文件中明确导入它们,您的其他 js 文件也可能会被忽略。
为了安全起见,加载插件时,请告诉 cli 捆绑所有附加文件。
{
"name": "@some-scope/some-plugin",
"path": "../node_modules/@some-scope/some-plugin/dist/amd",
"main": "some-plugin",
"resources": ["**/*.{js,html,css}"]
}