我的工作是一个角度4项目,该项目的三个平台(移动与NativeScript,网络和桌面电子)。因为我将在这三个项目之间共享几个代码(服务、模型、管道.)我已经在这3个应用程序的每个src文件夹中创建了一个共享文件夹。我制作了一个复制粘贴,在这三个平台的层次上同步这个目录。
很快,这个项目开始成长,同步成为一个令人头疼的问题,所以我开始做一些研究。我有几个建议,但在我看来,最简单的建议是将共享文件夹放在解决方案的根目录中,并通过一个符号链接来同步每个项目中文件夹的内容。
因此,我使用了在GitHub上找到的非常好的代码来创建符号链接https://github.com/NathanWalker/angular-seed-advanced/blob/master/tools/install.js。
但是当我生成项目时,我有一个我无法理解的错误。
compiler.es5.js:1690 Uncaught Error: Unexpected value 'SharedModule' imported by the module 'AppModule'. Please add a @NgModule annotation.
at syntaxError (compiler.es5.js:1690)
at compiler.es5.js:15382
at Array.forEach (<anonymous>)
at CompileMetadataResolver.webpackJsonp.../../../compiler/@angular/compiler.es5.js.CompileMetadataResolver.getNgModuleMetadata (compiler.es5.js:15365)
at JitCompiler.webpackJsonp.../../../compiler/@angular/compiler.es5.js.JitCompiler._loadModules (compiler.es5.js:26795)
at JitCompiler.webpackJsonp.../../../compiler/@angular/compiler.es5.js.JitCompiler._compileModuleAndComponents (compiler.es5.js:26768)
at JitCompiler.webpackJsonp.../../../compiler/@angular/compiler.es5.js.JitCompiler.compileModuleAsync (compiler.es5.js:26697)
at PlatformRef_.webpackJsonp.../../../core/@angular/core.es5.js.PlatformRef_._bootstrapModuleWithZone (core.es5.js:4536)
at PlatformRef_.webpackJsonp.../../../core/@angular/core.es5.js.PlatformRef_.bootstrapModule (core.es5.js:4522)
at Object.../../../../../src/main.ts (main.ts:11)但是,值得注意的是,当我删除符号链接并手动放回我的文件时,所有这些都是正常构建的。
发布于 2017-10-19 12:06:35
我在谷歌上搜索了一段时间后找到了一个解决方案。
这似乎是角质层webpack的一个问题。有关详细信息,请参阅此链接:https://github.com/webpack/webpack/issues/3148
要解决这个问题,您应该将您的符号链接源放在计算机的另一个驱动器上。对我来说很好。
https://stackoverflow.com/questions/46801208
复制相似问题