electron-vue项目中无法使用sass和自定义的全局变量
1.项目配置:
- 安装:使用
vue init simulatedgreg/electron-vue 项目名
创建的electron-vue项目(github看了这个项目已经很久没维护了,奈何这个框架方便又集成了vue框架,所以最后还是使用了这种方式创建项目) - 项目配置:
2.项目需求:
将一个成型的vuecli项目挪进一个electron-vue项目中,项目需要sass语法支持和全局jQuery变量
3.出现问题:
使用npm安装sass依赖并且在.electron/webpack.web.config.js中配置sass rule,基于对electron和webpack都不太了解,在.electron/webpack.renderer.config.js中也配置了rule,在vue文件内测试使用lang=scss后立即报红
4.做过的功课
1.sass依赖的问题
- GitHub上看了sass-loader的文档,使用dartsass只要安装
npm i sass sass-loader --save-dev
即可; 使用nodesass需要安装npm i sass-loader node-sass --save-dev
;两种方法都试了一遍,无果
- 也参考了网上的其他答案,一种声音认为sass安装版本问题,尝试下了低版本的,也尝试下了最新版本的,无果
- 再有就是认为npm 下载会漏下一些sass需要的包,所以也试过使用淘宝镜像,无果
2.sass的webpack配置问题
GitHub上也看了直接复制了sass的规则到.electron/webpack.renderer.config.js
// .electron/webpack.renderer.config.js
rules:[
{
test: /\.s[ac]ss$/i,
use: [
"style-loader",
"vue-style-loader",
"css-loader",
{
loader: "sass-loader",
options: {
// Prefer `dart-sass`
implementation: require("sass"),
},
},
],
},
// 项目其他配置
]
定义全局的jQuery变量也是在.electron/webpack.renderer.config.js中配置不生效
plugins: [
new webpack.ProvidePlugin({
$: "jquery",
jquery: "jquery",
jQuery: "jquery",
"window.jQuery": "jquery",
})
],
用scss吧。sass应该还有其他依赖

建议版本。亲测可行