zoukankan      html  css  js  c++  java
  • Sass中文乱码问题(手动编译和watch编译)

    一、sass手动编译出错

    .scss文件中含有中文的时候编译报错(比如注释,比如字体栈),比如:

    foo.scss:

    image

    编译:

    image

    惊讶

    解决办法:

    找到类似这个的路径的文件(仅供参考,不同环境可能不同):

    C:Ruby23-x64lib
    ubygems2.3.0gemssass-3.4.22libsassengine.rb

    打开,在所有的require后面添加一句:

    Encoding.default_external = Encoding.find('utf-8')

    这样子:

    image

    直接编译:

    sass foo.scss foo.css

    结果foo.css:

    image

    搞定!捧腹大笑

    有的说还要在首行加一句:

    @charset "UTF-8";

    如图:

    图片挂了

    编译结果:

    图挂了

    跟上面的对比一下,加不加@charset无所谓,因为编译器编译的时候会给加上的,当然手动指定是个好习惯。

    二、watch编译出错

    sass --watch foo.scss:foo.css

    手动编译可以,但是watch编译就是不行,真是急死个人,搞半天找到原因。
    watch编译出错是因为当前的目录中含有中文字符,将.scss文件移到纯英文字符路径下再watch就可以了。
    这点是比较奇怪的,含有中文路径的情况下手动编译可以但是watch就出问题,只能猜想是watch调用的某模块不支持中文路径吧....

    总结一下:

    1. sass手动编译乱码:在C:Ruby23-x64lib ubygems2.3.0gemssass-3.4.22libsassengine.rb的所有require后加一句 Encoding.default_external = Encoding.find('utf-8')。
    2. watch编译乱码:watch编译的路径不能有中文。

  • 相关阅读:
    spring的9个地方调用了5次后置处理器的详细情况
    spring容器启动
    什么是好的代码
    随机文件读写
    mysql 写锁
    mysql 高效率查询背景
    spring中的重点
    spring bean生命周期和上下文初始化
    雷电模拟器 v3.71绿色版
    免费申请 QQ 免费靓号
  • 原文地址:https://www.cnblogs.com/cc11001100/p/5944794.html
Copyright © 2011-2022 走看看