无效的US-ASCII字符使用SASS
我正在使用grunt,grunt-contrib-sass和angular度材质。 添加angular度材质后,构build在CI过程(BitBucket Pipelines)中开始失败。 错误是:
Invalid US-ASCII character "\xE2" online 4242 of bower_components/angular-material/angular-material.scss
我所读到的关于解决这个问题的一切都包括将编码设置在SASS文件的顶部,但是由于它是在构build过程中通过bower安装的,所以这是不合理的。 我曾尝试将其添加到我的主要scss文件的angular度材料导入的顶部,但这不起作用。
我正在使用一台电脑,并在当地正常工作。 我正在使用starefossen/ruby-node:latest
映像starefossen/ruby-node:latest
CI的starefossen/ruby-node:latest
,它是失败的地方。 以下是pipe道中的构build脚本:
npm install npm install -g bower bower install --allow-root npm install -g grunt-cli gem install sass grunt test grunt build
这安装了Sass 3.4.22。
你使用的是Mac吗? 你用什么版本的Sass?
还发现这个,可能有帮助:
Just add this line to top of config.rb Encoding.default_external = "utf-8"
用这种或那种方式更改文件编码可能会工作。
你也可以检查你的material.scss(在4242行看起来像)或你添加的代码并replace可疑的字符。
\ xe2通常是一个字符,或者 – 与键盘input的ascii不同。 如果从网上复制粘贴,通常会input您的代码。
在你新添加的代码中,用键盘input的字母replace非字母字符,它应该可以工作。