sass编译遇到的编码问题

sass 编译 可能会出现两种情况:

一、手动编译

比如编译的文件内有 包含中文 例如:

@charset "utf-8"
/* 出现中文的注释  */
$fontFamily: '微软雅黑';
*{
  font-family:$fontFamily;
}

编译:

报错 :error src/sass/common.scss (Line 4: Invalid GBK character "\xE5")

解决方案:
找到此文件C:\Ruby23-x64\lib\ruby\gems\2.3.0\gems\sass-3.4.22\lib\sass\engine.rb
require XXX 下一行 添加 Encoding.default_external = Encoding.find('UTF-8') 即可

二、gulp下的watch

报错: Encoding::CompatibilityError: incompatible character encodings: GBK and UTF-8 Use --trace for backtrace.
出现此类错误时 检查下路径是否出现中文。

总结

总结一下:

  1. sass手动编译乱码:在C:\Ruby23-x64\lib\ruby\gems\2.3.0\gems\sass-3.4.22\lib\sass\engine.rb的所有require后加一句 Encoding.default_external = Encoding.find('utf-8')。
  2. watch编译乱码:watch编译的路径不能有中文。

原文地址 http://www.cnblogs.com/cc11001100/p/5944794.html`

你可能感兴趣的:(sass编译遇到的编码问题)