[英]How to import whole SCSS folder in Vue Nuxt project?
在我的公司,我們沒有在 Vue 文件中編寫 css,我們更喜歡使用SCSS
的舊方式。
問題是,我們最終需要在styles.scss
創建新組件時在styles.scss
中編寫新的導入,這在更大的項目中確實讓我感到styles.scss
。
不久前,當我在 React 中進行開發時,我在webpack.config
文件中導入了名為node-sass-glob-importer
模塊, webpack.config
調整了一下( 您可以在此處查看)並且它起作用了 - 我可以像這樣導入文件夾: @import "components/**";
在 Nuxt 中,我只有nuxt.config.js
文件,我有點迷失了。 我知道如何在那里擴展一些簡單的東西,但這似乎更復雜。
導入node-sass-glob-importer
或以其他方式做同樣的事情有什么幫助嗎?
如何使用https://github.com/nuxt-community/style-resources-module然后:
export default {
modules: ['@nuxtjs/style-resources'],
styleResources: {
scss: [
'./assets/yourFolder/*.scss'
]
}
}
您可以像這樣在 Nuxt 中使用node-sass-glob-importer
:
nuxt.config.js:
const globImporter = require('node-sass-glob-importer');
export default {
...
css: [
'~/assets/scss/global.scss'
],
...
build: {
extend(config, {loaders: {scss}}) {
const sassOptions = scss.sassOptions || {};
sassOptions.importer = globImporter();
scss.sassOptions = sassOptions;
}
}
}
global.scss:
@import "./assets/scss/base/*";
@import "./assets/scss/components/*";
styleResources 用於諸如變量、mixin 和函數之類的東西,您希望在 SCSS 中的任何地方使用,而無需導入文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.