使用SASS的US-ASCII角色无效



我正在使用咕unt,grunt-contrib-sass和Angular材料。添加角材料后,构建开始在CI过程(Bitbucket管道(中失败。错误是:

Invalid US-ASCII character "xE2" online 4242 of bower_components/angular-material/angular-material.scss

我阅读的有关解决此问题的所有内容都涉及将编码设置在SASS文件的顶部,但是由于它是在构建过程中通过Bower安装的,因此这是不合理的。我确实尝试将其添加到我的主SCSS文件的顶部,但这不起作用。

我正在使用PC,在本地工作正常。我正在为CI使用Docker Image starefossen/ruby-node:latest,这是它失败的地方。这是管道中的构建脚本:

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"

以一种或另一种方式更改文件编码可以工作。

您也可以检查您的材料。Scss(在第4242行上看起来像(或您添加的代码并替换可疑字符。

xe2通常是类似于或 - 但与键盘输入的ASCII相同的字符。通常,如果您从网络复制 -

,这些都会输入您的代码。

在您新添加的代码中,用键盘键入的代码替换了非字母字符。

rrd写道:

您正在使用Mac吗?您正在使用什么版本的SASS?

也发现了这一点,可能会有所帮助:

只需将此行添加到config.rb的顶部encoding.default_external =&quort; utf-8

我遇到了相同的字符集问题。

特别是在OSX上,Ruby编码设置的接缝是一个问题。

我修复了它在主项目目录中创建一个config.rb文件,以明确地告诉Ruby应该使用哪种CHAR集。由于Sass和Compass取决于Ruby,因此很可能会解决您的问题。

Encoding.default_external = 'utf-8'

相关内容

  • 没有找到相关文章

最新更新