在 NextJs 中包含 Sass 的正确方法是什么?
What is the right way to incude Sass in NextJs?
当我在 NextJs 中使用 Sass 文件时,我收到来自 mini-css-extract-plugin
的“conflicting order
”警告。冲突总是弄乱我在 build
上的样式。可以看到下面描述的错误link:
这是一篇解决此问题的文章,但它讨论了只为一页订购 Sass 文件。当有多个页面时,我不确定如何进行排序。我该如何解决 conflicting order
问题?
如果您使用的是 nextjs 9.3 或更高版本,您可以像 css 模块一样使用它。至少他们建议您这样做。
这是一个example。
您还可以查看 Next.js 文档中的 Sass support。
--更新
最好的方法是为每个组件创建一个不同的 scss 模块。它看起来像这样。
Components
├── Header
│ ├── Header.js
│ ├── Header.module.css
├── Footer
│ ├── Footer.js
│ ├── Footer.module.css
├── Nav
│ ├── Nav.js
│ ├── Nav.module.css
使用 css 模块的主要思想是防止您使用全局 sheet。这样 css 将根据组件的代码拆分进行优化,您不必担心两次声明相同的 class,每个 css 模块文件将生成一个唯一的 class名字.
我正在使用 css 模块开发一个项目,该项目尚未完成,但文件结构与 sass 几乎相同,您可以看看是否你要。
当我在 NextJs 中使用 Sass 文件时,我收到来自 mini-css-extract-plugin
的“conflicting order
”警告。冲突总是弄乱我在 build
上的样式。可以看到下面描述的错误link:
这是一篇解决此问题的文章,但它讨论了只为一页订购 Sass 文件。当有多个页面时,我不确定如何进行排序。我该如何解决 conflicting order
问题?
如果您使用的是 nextjs 9.3 或更高版本,您可以像 css 模块一样使用它。至少他们建议您这样做。
这是一个example。
您还可以查看 Next.js 文档中的 Sass support。
--更新
最好的方法是为每个组件创建一个不同的 scss 模块。它看起来像这样。
Components
├── Header
│ ├── Header.js
│ ├── Header.module.css
├── Footer
│ ├── Footer.js
│ ├── Footer.module.css
├── Nav
│ ├── Nav.js
│ ├── Nav.module.css
使用 css 模块的主要思想是防止您使用全局 sheet。这样 css 将根据组件的代码拆分进行优化,您不必担心两次声明相同的 class,每个 css 模块文件将生成一个唯一的 class名字.
我正在使用 css 模块开发一个项目,该项目尚未完成,但文件结构与 sass 几乎相同,您可以看看是否你要。