我正在使用Angular2,并使用AOT预编译代码.
在组件的templateUrl中使用相对路径时,我能够编译代码。
但是在组件的templateUrl中使用绝对路径时编译失败了
编译命令:"node_modules/.bin/ngc" -p tsconfig-aot.json
在使用绝对templateUrl时,我得到了以下错误:
错误:编译失败。找不到资源文件:{绝对路径} at (C:\Dipendra\stash-workspace\angular2Aot\WebContent\node_modules\@angular\compiler-cli\src\compiler_host.js:291:19) at CompilerHost.loadResource (C:\Dipendra\stash-workspace\angular2Aot\WebContent\node_modules\@angular\compiler-cli\src\compiler_host.js:230:85) at Object.get (C:\Dipendra\stash-workspace\angular2Aot\WebContent\node_modules\@angular\compiler\bundles\compiler.umd.js:26374:111) at DirectiveNormalizer._fetch (C:\Dipendra\stash-workspace\angular2Aot\WebContent\node_modules\@angular\compiler\bundles\compiler.umd.js:13753:47) at DirectiveNormalizer.normalizeTemplateAsync (C:\Dipendra\stash-workspace\angular2Aot\WebContent\node_modules\@angular\compiler\bundles\compiler.umd.js:13799:25) at DirectiveNormalizer.normalizeTemplate (C:\Dipendra)stash-workspace\angular2Aot\WebContent\node_modules\@angular\compiler\bundles\compiler.umd.js:13771:48) at CompileMetadataResolver._loadDirectiveMetadata (C:\Dipendra\stash-workspace\angular2Aot\WebContent\node_modules\@angular\compiler\bundles\compiler.umd.js:18074:79) at C:\Dipendra\stash-workspace\angular2Aot\WebContent\node_modules\@angular\compiler\bundles\compiler.umd.js:18250:58 at Array.forEach (原生)在CompileMetadataResolver.loadNgModuleDirectiveAndPipeMetadata (C:\Dipendra\stash-workspace\angular2Aot\WebContent\node_modules\@angular\compiler\bundles\compiler.umd.js:18249:45)编译失败
发布于 2017-06-04 15:44:51
角AOT编译器要求模板文件与组件位于同一个文件夹中,尽管JIT编译器不需要这样做。
对于设计师来说,这是一个非常糟糕的决定。答案是重新设计整个应用程序,以便模板文件与组件位于同一个文件夹中。
有几个所谓的工作周围,但我不清楚他们是否真的工作。如果我成功的话,我会更新这个帖子。
https://stackoverflow.com/questions/42554636
复制相似问题