【问题标题】:Bootstrap 4 SCSS compilation: Error: Invalid US-ASCII character "\xE2"Bootstrap 4 SCSS 编译:错误:无效的 US-ASCII 字符“\xE2”
【发布时间】:2018-06-30 11:05:17
【问题描述】:

在编译一些 bootstrap 4 模块时遇到问题(从 beta3 更新)。

虽然可以通过在 _hover.scss mixin partial 上设置 @charset: 'UTF-8'; 来解决该问题(在文件中注明已弃用),但考虑到它应该像以前的 beta 版本一样开箱即用,为什么需要这样做。

_hover.scss中的代码:

@mixin hover {
  &:hover { @content; }
}

@mixin hover-focus {
  &:hover,
  &:focus {
    @content;
  }
}

@mixin plain-hover-focus {
  &,
  &:hover,
  &:focus {
    @content;
  }
}

@mixin hover-focus-active {
  &:hover,
  &:focus,
  &:active {
    @content;
  }
}

查看 SCSS 文件后,无法准确找出问题所在,引号似乎没问题。

【问题讨论】:

  • 始终插入代码 sn-p 而不是代码图片。
  • 里面的代码没有错,但我炸了它..检查是否可能是评论错字

标签: css sass bootstrap-4 twitter-bootstrap-4


【解决方案1】:

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

尤其是在 OSX 上,ruby 编码设置似乎存在问题。

我修复了它,在主项目目录中创建了一个 config.rb 文件,以明确告诉 ruby​​ 它应该使用哪种字符集编码。 由于 sass 和 compass 依赖于 ruby​​,这很可能会解决您的问题。

Encoding.default_external = 'utf-8'

【讨论】:

    【解决方案2】:

    经过详细了解后似乎是顶级 cmets 上的 - 字符(“iOS-an issue..”)。

    可以将其替换为自己的 - 字符,并且应该可以正常编译(或者只需在 _hover.scss 混合文件的顶部添加 @charset: 'UTF-8';)。

    问题报告:https://github.com/twbs/bootstrap/issues/25391

    【讨论】:

    • 我已经提交了 PR 来解决这个问题。让我们希望它尽快得到热修复! github.com/twbs/bootstrap/pull/25503
    • PR 似乎没有修复——当你调用“sass --watch”时,他们说现在使用“--default-encoding=UTF-8”。这确实有效,但这真的可以解决问题吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-07
    • 2011-04-24
    • 2011-04-10
    • 2011-06-20
    • 1970-01-01
    相关资源
    最近更新 更多