Win10安装node-sass

今天在Github上下载了一个前端开源项目,当我使用npm安装依赖时出现了各种问题,解决过程中学了挺多知识,刚好总结一下。

使用命令

安装依赖,在根目录下执行

复制代码
npm install --registry=https://registry.npm.taobao.org

出现的问题

--legacy-peer-deps

因为项目比较老,所以本地Node版本与项目版本有差距,就不能直接安装依赖。报错建议使用--legacy-peer-deps或者--force

在NPM v7中,现在默认安装peerDependencies 。在很多情况下,这会导致版本冲突,从而中断安装过程。--legacy-peer-deps标志是在 v7中引入的,目的是绕过peerDependency 自动安装;它告诉 NPM 忽略项目中引入的各个modules 之间的相同modules 但不同版本的问题并继续安装,保证各个引入的依赖之间对自身所使用的不同版本modules共存。

--force 就是强制安装

Sass安装

该前端项目用了node-sass,这也是我在安装依赖过程中出现问题最多的地方。

安装相关的前置依赖

以下命令需要管理员权限下安装

复制代码
npm install --global --production windows-build-tools https://npm.taobao.org/mirrors/node-sass/
# 使用python命令查看是否安装成功

npm install --global node-gyp
# 使用node-gyp list命令查看是否安装成功

安装完python、node-gyp后,继续安装依赖,执行以下命令

复制代码
npm install --registry https://registry.npm.taobao.org --legacy-peer-deps

但是还是有问题

复制代码
npm ERR! code 1
npm ERR! path C:\Data\CodeProject\personal\friday-vue\friday-ui\node_modules\node-sass
npm ERR! command failed
npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node scripts/build.js
npm ERR! Building: C:\Data\Soft\Nodejs\node.exe C:\Data\CodeProject\personal\friday-vue\friday-ui\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
npm ERR! Active code page: 65001
npm ERR! 在此解决方案中一次生成一个项目。若要启用并行生成,请添加"/m"开关。
npm ERR! 生成启动时间为 2022/4/7 11:23:02。
npm ERR! 节点 1 上的项目"C:\Data\CodeProject\personal\friday-vue\friday-ui\node_modules\node-sass\build\binding.sln"(默认目标)。
npm ERR! ValidateSolutionConfiguration:
npm ERR!   正在生成解决方案配置"Release|x64"。
npm ERR! 项目"C:\Data\CodeProject\personal\friday-vue\friday-ui\node_modules\node-sass\build\binding.sln"(1)正在节点 1 上生成"C:\Data\CodeProject\personal\friday-vue\friday-ui\node_modules\node-sass\build\binding.vcxproj.metaproj"(2) (默认目标)。
npm ERR! 项目"C:\Data\CodeProject\personal\friday-vue\friday-ui\node_modules\node-sass\build\binding.vcxproj.metaproj"(2)正在节点 1 上生成"C:\Data\CodeProject\personal\friday-vue\friday-ui\node_modules\node-sass\build\src\libsass.vcxproj"(3) (默认目标)。
npm ERR! PrepareForBuild:
npm ERR!   正在创建目录"Release\obj\libsass\"。
npm ERR!   正在创建目录"C:\Data\CodeProject\personal\friday-vue\friday-ui\node_modules\node-sass\build\Release\"。
npm ERR!   正在创建目录"Release\obj\libsass\libsass.tlog\"。
npm ERR! InitializeBuildStatus:
npm ERR!   正在创建"Release\obj\libsass\libsass.tlog\unsuccessfulbuild",因为已指定"AlwaysCreate"。
npm ERR! ClCompile:

之后测试发现需要先卸载node-sass吗,然后再安装才行

复制代码
npm uninstall node-sass --force

npm i node-sass --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/

npm --registry https://registry.npm.taobao.org i --legacy-peer-deps

终上所述,终于安装依赖完成。

小知识

可以设置一下全局镜像

复制代码
npm config set registry https://registry.npm.taobao.org
npm config set SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass
相关推荐
saber_andlibert22 分钟前
TCMalloc底层实现
java·前端·网络
逍遥德23 分钟前
如何学编程之01.理论篇.如何通过阅读代码来提高自己的编程能力?
前端·后端·程序人生·重构·软件构建·代码规范
冻感糕人~37 分钟前
【珍藏必备】ReAct框架实战指南:从零开始构建AI智能体,让大模型学会思考与行动
java·前端·人工智能·react.js·大模型·就业·大模型学习
程序员agions41 分钟前
2026年,“配置工程师“终于死绝了
前端·程序人生
alice--小文子1 小时前
cursor-mcp工具使用
java·服务器·前端
晚霞的不甘1 小时前
揭秘 CANN 内存管理:如何让大模型在小设备上“轻装上阵”?
前端·数据库·经验分享·flutter·3d
小迷糊的学习记录1 小时前
0.1 + 0.2 不等于 0.3
前端·javascript·面试
梦帮科技2 小时前
Node.js配置生成器CLI工具开发实战
前端·人工智能·windows·前端框架·node.js·json
VT.馒头2 小时前
【力扣】2695. 包装数组
前端·javascript·算法·leetcode·职场和发展·typescript
css趣多多2 小时前
一个UI内置组件el-scrollbar
前端·javascript·vue.js