wxa.js 默认应用的款式语言是 scss,所以其默认创立的我的项目就会要求装置 node-sass,但因为 node-sass 依赖了 binding.node 等包,导致经常会呈现 node-sass 装置失败的问题。
如果你并没有在我的项目中应用 scss,则能够思考将你我的项目种的 node-sass 移除,从而放大我的项目的依赖体积,晋升我的项目装置胜利的概率。
思路
因为 wxa 默认应用了 scss,因而,咱们须要移除我的项目中针对 scss 的配置,并移除代码中的 scss,这样能力保障后续在编译的过程中,不会调用 node-sass 的依赖。
步骤
- 移除 wxa.config.js 中对于 scss 的配置
在 wxa 的默认配置中,配置了 sass/scss 的依赖,咱们如果不移除这个依赖,就会导致后续在构建的时候,主动装置相干依赖。
因而,咱们须要在 wxa.config.js
中增加 use
相干配置,且仅保留 babel 作为依赖,具体批改如下:
module.exports = {
plugins: [
new ReplacePlugin({list: envlist,}),
],
// 你的其余配置
use: [
{
test: /\.js$/,
name: 'babel',
},
],
// 你的其余配置
};
- 移除我的项目中标记为 Scss 的语言
在移除了 wxa.js 的构建依赖后,接下来须要移除代码中对于 scss 的标示,从而使咱们的代码能够被正确的渲染工具所渲染。具体批改如下所示,右侧为批改后的后果
- 移除 package.json 中的 相干依赖。
当咱们实现了上述的操作之后,就能够释怀的移除零碎中对于 sass 的依赖了,从而缩小整个我的项目的体积和对 node-sass 的依赖。
你只须要执行如下的命令,就能够移除我的项目中对于 sass 的依赖了。
npm uninstall @wxa/compiler-sass
// 或者
yarn remove @wxa/compiler-sass
总结
scss 是一个好的语言,但 node-sass 却不是一个好的工具,如果你不应用它,无妨将其移除,晋升你的我的项目构建速度。