uni-app 使用sass-resources-loader全局引入scss

方案一(已失敗)

1.安裝sass-resources-loader插件

npm i sass-resources-loader
項目地址:[http://npm.taobao.org/package/sass-resources-loader](http://npm.taobao.org/package/sass-resources-loader)css

2.uni-app項目根目錄下手動建立一個vue.config.js配置文件

配置vue.config.js以下:vue

// vue.config.js
module.exports = {
    chainWebpack: config => {
        const oneOfsMap = config.module.rule('scss').oneOfs.store
        oneOfsMap.forEach(item => {
            item
                .use('sass-resources-loader')
                .loader('sass-resources-loader')
                .options({
                    // Provide path to the file with resources(這裏是你.scss文件所在路徑)
                    resources: './assets/css/*.scss',
                })
                .end()
        })
    }
}

3.新建你須要全局引入的.scss文件,以下:

image.png
image.png

4. 在須要用到全局樣式的時候直接使用便可,以下:

image.png

5.效果以下:

image.png

目前這種方案在自定義編譯模式下(手動調用npm run dev)可行,可是用hdx運行會報錯,uni-app官方的bugnpm

方案二

使用uni-app項目內置的uni.scss,這個文件(項目根目錄)裏面的scss樣式能夠全局使用,不須要單個頁面import.scss文件

坑又來了,uni.scss裏面不支持引入你自定義的scss文件而後全局使用,沒辦法,LJ 框架
不只如此,sb框架還不支持函數@mixin等sass

相關文章
相關標籤/搜索