angular-cli项目切换分支时报错:Cannot read property 'length' of undefined

最近遇到一个莫名奇妙的问题,angular项目已经通过localhost启动,然后项目中切换分支时,自动编译出错:

ERROR in TypeError: Cannot read property 'length' of undefined
   at createSourceFile (/Users/simon/...

甚至直接从远程仓库pull下来的代码都会有这个问题。

解决方案

先说解决方案,重新npm start 或者ng serve
...没错,就这么简单。

出现原因

官方在#5053中确认为一个bug,并表示:

This is a real issue and we will look at it.
-- -- 2017年2月
如果你保持angular-cli版本为最新的话,应该不会出现这个问题,但是有些情况我们使用的仍然是旧版,因此可能会导致这个问题。
比如你正在维护一个旧的项目,虽然你的全局cli版本是最新的,但是使用的local version有可能是低版本。

emmmm,我目前项目的local angular cli version 是1.6.6,出现这问题也难怪。

推荐阅读更多精彩内容