Node.js 获取错误';无法读取属性';长度';未定义的';在angular2应用程序中运行ng serve时
使用angularcli命令ng serve运行angular2应用程序时,我遇到以下问题 dashboard@0.0.0启动C:\Users\padmavathi\Downloads\phototype development\web\dashboard ng发球 请帮我解决这个问题。 提前谢谢 在重构过程中意外删除Node.js 获取错误';无法读取属性';长度';未定义的';在angular2应用程序中运行ng serve时,node.js,angular,typescript,angular-cli,Node.js,Angular,Typescript,Angular Cli,使用angularcli命令ng serve运行angular2应用程序时,我遇到以下问题 dashboard@0.0.0启动C:\Users\padmavathi\Downloads\phototype development\web\dashboard ng发球 请帮我解决这个问题。 提前谢谢 在重构过程中意外删除environment.prod.ts时,我们出现了相同的错误(无法读取createSourceFile[…]处未定义[…]的属性“length”)。恢复此文件解决了我们的问题 另
environment.prod.ts
时,我们出现了相同的错误(无法读取createSourceFile[…]处未定义[…]的属性“length”
)。恢复此文件解决了我们的问题
另外,Github上还报告了一个问题:
最后一个console.log显示了这个麻烦的文件检测错误的简单方法正在运行 tsc-p
您将在编译源代码时看到完整的错误。我也遇到了这个问题。我检查了
environment.ts中的所有文件和其他文件路径
Angular拒绝在我进行任何更改后重建。我尝试了以下方法,然后求助于以下修复:
- 使用
rm-rf node_modules/*
清除node_模块,然后重新安装npm
- 重新克隆整个回购协议
最后,解决我问题的唯一办法是将@ngtools/webpack
插件从版本1.9.0
降级为1.8.2
我不确定这是否是正确的修复方法,但它对我有效。我在这里添加此评论,因为它可能会节省一些时间
我的配置:
Mac OSX 10.11.6
“@angular/cli”:“1.4.2”
“typescript”:“~2.3.3”
“网页包”:“~3.5.5”
也有同样的问题
我补充说
console.log("createSourceFile " + fileName);
在\node\u modules\typescript\lib\typescript.js下的createSourceFile
函数中
再次运行ng build,记录所有文件。
我设法找到了丢失的文件并进行了处理。添加一个if
语句,只打印出麻烦文件的名称,即if(!sourceText)console.log(“fileName:+fileName”);
这帮助我找到了错误,这是调试@StefanTurcanu的非常有效的方法
console.log("createSourceFile " + fileName);