Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
708 views
in Technique[技术] by (71.8m points)

npm可不可以选择性安装部分依赖?

我们在用Vue项目的时候,使用了Cypress做e2e测试。当我们的测试人员写CI流水线时,每次通过npm i; npm run test;来检查单元测试覆盖率,这其实与cypress无关,但每次却需要install,造成速度很慢。这个问题扩大下,就是当我们只专注于做一件事的时候,有许多多余的依赖都是用不上的,怎么做来选择性的为具体做的某一件事选择性地安装部分依赖。

比如说:

npm i --exclude cypress

或者在package依赖里有好多选项可以选择:

{
    // ...
    "dependencies": {},
    "devDependencies": {},
    "CIDependencies": {},
    "anyWantedDependencies": {}
}

当我们安装时,可以选择安装哪一部分依赖:

npm i --dependencies anyWanted

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
  1. 把那部分依赖放到 optionalDependencies
  2. ci 里面用 npm i --no-optional 安装依赖
  3. 如果测试不需要 devDependencies 里的依赖,用 --production 也可以

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...