在使用 import 语句时,我对区分 sass-loader 和 css-loader 有点困惑。据我所知,css loader resolve import statment(@import) 和 style-loader 可以在你的页面上动态注入(inject)样式。我也在我的应用程序中使用 sass-loader。所以我对 sass-loader 功能感到困惑。它是否还解决了 import 语句以及将 sass 转换为 css 的问题。在这种情况下,如果我在项目中仅使用 sass 文件,则不需要 css-loader,因为该工作将由 sass-loader 完成。我在这里吗?任何人都可以强调这一点。
任何帮助将非常感激

请您参考如下方法:

sass-loader将解决 @import语句并将导入的 Sass 包含在生成的 CSS 中,因此生成的 CSS 可能没有任何导入语句。但是 css-loader不只是处理进口。您提到的三个加载器做的事情非常不同,它们应该一起使用,尽管您可以使用其他加载器,这会产生类似的结果。

  • sass-loader - 将 Sass 转换为 CSS。 ( 输入:Sass,输出:CSS )
  • css-loader - 将 CSS 转换为 JavaScript 模块。 ( 输入:CSS,输出:JavaScript )
  • style-loader - 将由 JavaScript 模块导出的 CSS 注入(inject) <style>在运行时标记。 ( 输入:JavaScript,输出:JavaScript )。

  • 注意: style-loader 的输出仅当您使用 CSS 模块时才相关,该模块传递将类名映射到本地标识符的对象。

    您不能使用 sass-loader没有任何将 CSS 转换为 JavaScript 的加载器,但您可以使用 raw-loader ,它只是将模块的内容作为字符串读入,但是你可能会丢失一些 css-loader 的转换。确实(例如 CSS 模块或缩小)。


    评论关闭
    IT干货网

    微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!