【发布时间】:2022-01-01 07:00:25
【问题描述】:
我正在尝试从/assets 目录导入全局 Sass 样式表,并使用在整个组件中定义的变量和 mixins 之类的东西。我的nuxt.config.ts 目前看起来像这样:
import { defineNuxtConfig } from "nuxt3";
export default defineNuxtConfig({
css: ["@/assets/styles/main.sass"],
styleResources: {
sass: ["@/assets/styles/main.sass"],
},
build: {
extractCSS: true,
styleResources: {
sass: "@/assets/styles/main.sass",
hoistUseStatements: true,
},
},
// buildModules: ["@nuxtjs/style-resources"], // This throws error
vite: {
css: {
loaderOptions: {
sass: {
additionalData: ` @import "@/assets/styles/main.sass"; `,
},
},
},
},
});
当我现在尝试使用变量时,我收到[plugin:vite:css] Undefined variable. 错误。这曾经在 Nuxt 2 中使用 @nuxtjs/style-resources 很好地工作,但我不确定如何在 Nuxt 3 中使其工作。
但是,该样式表中的类和应用样式可以正常工作,只有变量、mixin 和映射不可访问。
有人可以帮忙吗?
【问题讨论】:
-
根据Docs,Nuxt 会自动加载预处理器。您可能需要添加预处理器。
-
我在
package.json中安装了sass和sass-loader,我也在组件中使用<style lang="sass">标签。由于某种原因仍然无法正常工作。 -
我不确定我是否能够正确设置,但让我们试试这个。我认为这就是我一直在努力的结构。
-
在
app.vue中,我们可以尝试将div背景设置为$test在main.sass中定义的变量
标签: vue.js nuxt.js vuejs3 vite nuxtjs3