将Angular 4 + Angular种子迁移到Angular 6 + Angular CLI
我正在使用SystemJS在组件之一内部动态加载插件
SystemJS.import("client/plugins/" + this.pluginElement.type + "/" + this.pluginElement.type + ".js")
如果我实际运行该应用程序,则可以:
http://localhost/client/plugins/dapChart/dapChart.js 404 (Not Found)
实际上,js文件不作为资产存在。
在src / client / plugins文件夹中,有一组用Typescript编写的模块,可以在应用程序中自由使用。
我想找到一种方法来告诉angular CLI编译我的plugins文件夹,并将结果视为资产并像复制到dist文件夹中一样复制它。
在我的脑海中,我看到3种选择(如果其中任何一种都没有,则没有任何证据):
手动编译plugins文件夹,并将其放入“ pluginCompiled”文件夹中,并使用
在Angular.json中将其声明为Assets tsc -p src/client/plugins --outDir src/client/assets/plugins
但是停止发球,编译然后重新启动ng发球非常烦人
如何使用Angular 6 / Angular CLI将已编译的插件放入构建输出目录中
答案 0 :(得分:0)
我实际上忘记了我自己是怎么做的,但是您可以添加cli配置文件。
在angular-cli中,您可能会执行以下操作:
"apps": [
{
"root": "src",
"outDir": "dist",
"assets": [
"assets",
"favicon.ico"
],
"client": [ "plugins": [ ] ], //something like this
"index": "index.html",
"main": "main.ts",
"polyfills": "polyfills.ts",
"test": "test.ts",
"tsconfig": "tsconfig.app.json",
"testTsconfig": "tsconfig.spec.json",
"prefix": "app",
}