ng build将文件导出到 dist 文件夹,如下所示
index.html
main.bundle.js
styles.bundle.js
...
我希望脚本位于子文件夹中
*index.html
scripts/main.bundle.js
scripts/styles.bundle.js
...*
我该怎么做?
-
run ng eject -ec
(为生产版本添加“-prod”,或者-aot false
用于 JIT 构建)。该命令将暴露webpack.config.js文件在你的根目录中。-ec
flag 将提取 CSS 文件(而不是从 JS 文件提供它们)。 (要再次“取消弹出”您的应用程序,请参阅我的另一个答案 https://stackoverflow.com/a/43026220/1657465)
-
Run npm install
为了安装 webpack 加载器
-
In webpack.config.js文件编辑output输入并添加您想要的 JS 文件目录名称:
"output": { "path": path.join(process.cwd(), "dist"), "filename": "scripts/[name].[chunkhash:20].bundle.js", "chunkFilename": "scripts/[id].[chunkhash:20].chunk.js" }
-
因为我们添加了-ec
标记为ng eject
命令,我们现在也有了 CSS 文件。我们也可以将其移动到分布/样式通过修改提取文本插件下的插件plugins进入webpack.config.js file:
`new ExtractTextPlugin({
"filename": "styles/[name].[contenthash:20].bundle.css",
"disable": false
}),`
- run
npm run build
since ng build
不再适用于弹出的应用程序。
你应该得到dist目录与scripts and styles其中的目录及其 JS/CSS 文件,索引.html应直接位于dist并有正确的包括,如:
`
`
Update:
Since 角7弹出命令已被禁用,因此该解决方案将不再有效(看到这个相关问题 https://stackoverflow.com/q/54794113/1657465).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)