我在Angular 4中是全新的,并试图弄清楚一个简单项目的基本结构。我已经测试了我的项目,昨天工作得很好。但今天当我打开我的项目并想要“服务”时,它显示以下错误。不知道是什么问题。
TypeError: Cannot read property 'length' of undefined
at createSourceFile (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:15457:109)
at parseSourceFileWorker (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:15389:26)
at Object.parseSourceFile (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:15338:26)
at Object.createSourceFile (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:15192:29)
at VirtualFileStats.getSourceFile (C:\Users\IR\Desktop\angular-first-project\node_modules\@ngtools\webpack\src\compiler_host.js:66:35)
at WebpackCompilerHost.getSourceFile (C:\Users\IR\Desktop\angular-first-project\node_modules\@ngtools\webpack\src\compiler_host.js:213:38)
at findSourceFile (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:67909:29)
at processImportedModules (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:68056:25)
at findSourceFile (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:67937:17)
at processSourceFile (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:67840:27)
at processRootFile (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:67728:13)
at C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:67018:60
at Object.forEach (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:1449:30)
at Object.createProgram (C:\Users\IR\Desktop\angular-first-project\node_modules\typescript\lib\typescript.js:67018:16)
at AotPlugin._setupOptions (C:\Users\IR\Desktop\angular-first-project\node_modules\@ngtools\webpack\src\plugin.js:129:28)
at new AotPlugin (C:\Users\IR\Desktop\angular-first-project\node_modules\@ngtools\webpack\src\plugin.js:26:14)
提前致谢。
答案 0 :(得分:6)
我在随机的场合看到过这种类型的错误,例如将组件移动到不同的文件夹后,即使所有引用都被查询以匹配新路径。
使用 ng-build 重建项目应该有所帮助。
答案 1 :(得分:2)
答案 2 :(得分:0)
是的,我已更改文件夹并收到该错误。建成之后
答案 3 :(得分:0)
我在开发环境中遇到了这个问题,在该环境中,我是通过ng serve
用户服务控制的systemd
启动应用程序的。用systemctl --user restart <myappservice>
重新启动用户服务后,它又按预期运行。这实际上就像取消ng serve
并再次调用该命令一样。
答案 4 :(得分:0)
我遇到了同样的问题。我有几种解决方法
将数据分配为数组
data = []
以html
*ngIf="data.length"
使用?
*ngIf="data?.length"