node-sass生产环境编译报错

  • node-sass生产环境编译报错已关闭评论
  • 107 次浏览
  • A+
所属分类:Web前端
摘要

本地和local环境正常,pre和生产环境编译报错local、pre、生产的编译环境一样,node版本都是14.16.1。拷贝本地node_modules文件夹到pre同样报错。

 "node-sass": "^4.12.0",  "sass-loader": "^8.0.2",

本地和local环境正常,pre和生产环境编译报错

local、pre、生产的编译环境一样,node版本都是14.16.1。拷贝本地node_modules文件夹到pre同样报错。

应该是node-sass和node的版本问题,但是又找不到问题,最后没办法把node-sass换成了sass

1、node-sass换成sass

"sass-loader": "^10.5.2", "sass": "^1.55.0",

2、全局替换 /deep/ => ::v-deep

3、element兼容问题

"element-ui": "^2.15.13",

element这个版本会报错,有一些兼容问题
npm install -g sass-migrator sass-migrator division ./node_modules/element-ui/packages/theme-chalk/src/*.scss    //或者安装到项目里 npm install -D sass-migrator ./node_modules/.bin/sass-migrator division ./node_modules/element-ui/packages/theme-chalk/src/*.scss  

修改element-ui的包,但是其他人拉下来还是未修改的包,所以用到了 patch-package

npm install -D patch-package

然后在package.json中scripts加上,npm install的时候自动为依赖包打上我们改过的依赖

"postinstall": "patch-package"

 ./node_modules/.bin/patch-package element-ui 

会比较本地包做了哪些修改,并在patches下生成一个包,这个包会通过git提交上去