JBo*_*hUA 5 webpack angular2-aot angular
我一直在试图让AOT使用我的Webpack应用程序.(@ ngtools /的WebPack)
任何人都可以帮助我吗?
它似乎工作,但compiler.js仍然包含在捆绑包中.此外,它仍然在寻找我所有的.html文件,并在所有组件模板上获得404.
所以据我所知,它并没有真正做到AOT最好的部分?
在这里任何光线都可以闪耀,我被卡住!
谢谢!!
如果单个文件处理不正确或根本没有加载,您将在 95% 发射时遇到无限循环。
更新::似乎有一个区域会吞掉错误:
reject(new Error('Child compilation failed:\n' + errorDetails));
Run Code Online (Sandbox Code Playgroud)
这是 @ngtools\webpack\src\resource_loader.js 的第 57 行,您需要放置一个断点来调试或输出该错误详细信息,否则您将永远陷入 AOT 编译。
只是留下这个以防万一有人被困在未来,基本上,如果你陷入无限循环,你可能走在正确的轨道上。
终于有东西可以做了,一路上遇到了很多问题。
我想,让我不明白的主要事情是,对于 AoT,所有文件都必须加载到 webpack 中
这是最终让我运行的 module.rules 配置...
// Ahead of Time Compilation
[{ test: /\.ts$/, loader: '@ngtools/webpack', exclude: [/\.(spec)\.ts$/] },
// AoT requires all files to be loaded
{ test: /\.html$/, loader: 'html-loader' },
{ test: /\.css$/, loader: 'raw-loader' },
{
test: /\.(png|jpe?g|gif|svg|woff|woff2|ttf|eot|ico)$/,
loader: 'file-loader', options: { name: '[path][name].[ext]' }
}]
Run Code Online (Sandbox Code Playgroud)
我添加了这个加载程序,它基本上只是将我的图像放回到它们存在的完全相同的位置..但我想这会导致它们被正确打包..
如果我不包含文件类型(或者如果加载文件时出现某种错误,请参阅下面的评论),那么我就会陷入无限循环......
如果你使用 --progress --profile 运行 webpack,你会发现它卡在 95% 的发射上。幕后发生的事情是某种绝对路径与相对路径问题,它陷入了 mkdirp 的循环中。
但我想 AoT 的诀窍是确保您拥有适用于您正在使用的每种文件类型的加载程序。
| 归档时间: |
|
| 查看次数: |
2039 次 |
| 最近记录: |