记录一次接手旧项目的踩坑之旅

背景

笔者最近入职了新的公司,上班第一天领导就交代任务要我把组里面的项目先跑起来熟悉一下。

我首先确认了一下组内常用的几个node版本,并通过nvm进行了提前下载。有了这一步前置工作,前几个项目都非常顺利的启动了起来,但是有一个项目npm install的时候一直报错。

问题一:gyp ERR! find Python

根据提示的内容去联想,这个问题很可能和Python的环境有关。上网查询了一下资料,确实是因为我们本机没有Python2.7的环境引起的。

解决方法

1.安装node-gyp

js 复制代码
npm install -g node-gyp

2.安装Python2.7环境

我们通过超管权限启动控制台运行一下命令

js 复制代码
npm install --global --production windows-build-tools

问题二:node-sass版本问题

一开始我是没有发现这个问题的,因为npm install的时候,并没有直接抛出node-sass的问题,反而是抛出了另外一个问题。

js 复制代码
# [options has an unknown property 'prependData'. These properties are valid: object { implementation?, sassOptions?, additionalData?, sourceMap?, webpackImporter? }](https://www.cnblogs.com/xzybk/p/14379861.html)

这个问题是因为我们项目中loaderOptions进行了以下的配置

其实这也是因为sass-loader的版本不同导致的问题,在不同的node-sass版本,对应的loaderOptions中的prependData字段是不一样的。具体的字段表可以参考下面:

另外我们node-sass也要根据我们项目的node版本去选择对应的版本。

我们可以通过以下指令下载指定版本的node-sass

js 复制代码
npm install node-sass@[本地node所对应的node-sass版本]

如果下载速度慢可以指定镜像源

npm install node-sass@[本地node所对应的node-sass版本] --registry=https://registry.npm.taobao.org --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/

总结

在接手新项目的时候,我们可以先准备好对应的node版本和python2.7环境。这两步可以让我们事半功倍。

另外我们也要注意选择适配我们当前node版本的sass版本,不然也会导致我们启动失败。

最后就是遇到问题可以多思考多查查资料~~

相关推荐
树上有只程序猿几秒前
后端思维之高并发处理方案
前端
庸俗今天不摸鱼35 分钟前
【万字总结】前端全方位性能优化指南(十)——自适应优化系统、遗传算法调参、Service Worker智能降级方案
前端·性能优化·webassembly
黄毛火烧雪下42 分钟前
React Context API 用于在组件树中共享全局状态
前端·javascript·react.js
Apifox1 小时前
如何在 Apifox 中通过 CLI 运行包含云端数据库连接配置的测试场景
前端·后端·程序员
一张假钞1 小时前
Firefox默认在新标签页打开收藏栏链接
前端·firefox
高达可以过山车不行1 小时前
Firefox账号同步书签不一致(火狐浏览器书签同步不一致)
前端·firefox
m0_593758101 小时前
firefox 136.0.4版本离线安装MarkDown插件
前端·firefox
掘金一周1 小时前
金石焕新程 >> 瓜分万元现金大奖征文活动即将回归 | 掘金一周 4.3
前端·人工智能·后端
三翼鸟数字化技术团队1 小时前
Vue自定义指令最佳实践教程
前端·vue.js
Jasmin Tin Wei2 小时前
蓝桥杯 web 学海无涯(axios、ecahrts)版本二
前端·蓝桥杯