🗒️前端项目限制环境版本
2023-12-12
| 2024-3-22
0  |  阅读时长 0 分钟
date
icon
password
description
permalink
categories
type
status
slug
summary
tags
category
updated
Mar 22, 2024 09:10 AM

前言

在如今这个前端项目框架较为成熟的年代,一个前端项目涉及到多个依赖,而这个项目的依赖又是居于项目的版本来的。所以一个大型的项目,多人进行联合开发的时侯,A说项目启动不起来了,B说安装包依赖出现一长串错误。C水打包出现报错了。一开始遇到这种问题,没有经验的话很难发现问题的所在。所以在项目中限制安全运行环境版本,是一个很好的规避方式。本文以pnpm,yarn和npm这3种常见的包管理器做例子说明。

配置engines

npm-package的文档中有提到如何指定Node.js版本。通过在package.json中通过engines的字段来指定版本。
然后再在项目的根目录新建.npmrc 文件,添加如下内容,启动严格模式。这样就会在版本不符合的时候提示版本问题。
这样在执行[npm|yarn|pnpm] install 安装项目依赖的时候,会检查node版本是否大于16.16.0并且pnpm大于等于7.26.3版本才能正确安装。

自动检测版本

上面的是手动进行检测版本,那么我们都希望像npm run dev 这样自动检测版本。那么就需要在package.json中加入指令
之后可以运行pnpm run check-envyarn run check-env ,这里没有写npm的情况,主要是这个对于npm没有作用。

npm自动检测版本

npm检测版本需要搭配semver的插件写一个脚本来实现。
semver是一个语义版本检测器
再次运行npm run check-env 就能看到提示了

限定包管理器

此时如果用非pnpm的包管理器就会提示错误
  • 项目管理
  • esbuild项目css样式隔离Google Voice 自动保号
    • Waline
    目录