角度构建错误:TypeError:无法读取属性' line'未定义的

时间:2018-02-19 14:52:57

标签: angular angular-cli

我突然面临生产的构建失败错误。 我正在运行此命令:

ng build --prod

并收到以下错误:

D:\a\1\s\node_modules\clean-css\lib\reader\input-source-map-

tracker.js:37
  if (originalPosition.line === null && line > 1 && selectorFallbacks > 0) {
                      ^
TypeError: Cannot read property 'line' of undefined
    at originalPositionFor (D:\a\1\s\node_modules\clean-css\lib\reader\input-source-map-tracker.js:37:23)
    at originalMetadata (D:\a\1\s\node_modules\clean-css\lib\tokenizer\tokenize.js:486:43)
    at intoTokens (D:\a\1\s\node_modules\clean-css\lib\tokenizer\tokenize.js:435:68)
    at tokenize (D:\a\1\s\node_modules\clean-css\lib\tokenizer\tokenize.js:74:10)
    at fromStyles (D:\a\1\s\node_modules\clean-css\lib\reader\read-sources.js:147:12)
    at fromString (D:\a\1\s\node_modules\clean-css\lib\reader\read-sources.js:48:10)
    at doReadSources (D:\a\1\s\node_modules\clean-css\lib\reader\read-sources.js:33:12)
    at readSources (D:\a\1\s\node_modules\clean-css\lib\reader\read-sources.js:24:10)
    at D:\a\1\s\node_modules\clean-css\lib\clean.js:99:12
    at _combinedTickCallback (internal/process/next_tick.js:67:7)
    at process._tickCallback (internal/process/next_tick.js:98:9)
Error: C:\Program Files\Git\bin\bash.exe failed with return code: 1

前几天工作正常,但突然停止工作。 有没有人知道为什么会这样?

(我正在使用angular cli版本1.6.7)

提前致谢

3 个答案:

答案 0 :(得分:0)

好的!它确认这是在最新版本的角度cli中发生的。

我最终通过将版本降低到1.6.7并删除^来修复我的问题 即使在降低版本之后我也面临着这个问题:

" @ angular / cli":" ^ 1.6.7"

然后我删除^来修复cli版本,现在它工作正常。

我请求角色团队请修复此角度cli问题,以便我们可以使用最新版本。

我希望这会有所帮助。

答案 1 :(得分:0)

虽然似乎clean-css在@ angular / cli 1.6.7之后失败了,但是这个问题可以解决@ angular / cli的更高版本,无论如何。

我在这个问题上领先于不间断的空格:https://github.com/jakubpawlowicz/clean-css/issues/1006

然后,我可以通过在Notepad ++中打开src /文件夹作为工作区,过滤* .scss和* .css,并使用\xA0查找非查找正则表达式来解决此问题打破scss / css文件中的空格;我发现了一个。删除后,我的错误就消失了。

答案 2 :(得分:-1)

问题得到解决

ng build --env = prod 解决了不需要降级角度cli版本的问题