Nodejs:暂时不要使用淘宝的cnpm来安装依赖,会造成WebStorm输入时卡顿

发布于 1周前 作者 h691938207 来自 nodejs/Nestjs

Nodejs:暂时不要使用淘宝的cnpm来安装依赖,会造成WebStorm输入时卡顿
建议大家不要直接使用淘宝的 cnpm, 而采用 alias 的方式使用淘宝 NPM 镜像, npm3 解决了依赖重复的问题, 避免 WebStorm 重复索引文件,解决了输入时代码完成卡顿的问题。已提交 cnpm Issue https://github.com/cnpm/cnpm/issues/106

3 回复

赞,我也是 cnpm 出了问题,然后改用了 alias 的形式。


cnpm 4+ 使用的是 npm3 ,依赖也是拍平的,不过它使用了 npminstall 这个模块处理的的模块存储结构,公共模块安装到 node_modules/.npminstall 目录下。

个人更喜欢默认 npm3 的处理方式

在Node.js开发中,确实建议尽量避免使用淘宝的cnpm(China Node Package Manager)来安装依赖,尤其是当你遇到IDE(如WebStorm)卡顿的问题时。cnpm虽然通过加速npm(Node Package Manager)的下载速度对开发者非常友好,但它会修改npm的默认行为,特别是它会在本地缓存所有包,而不是使用npm的扁平化依赖树结构。这可能导致一些兼容性和性能问题。

以下是一些建议和解决方案:

  1. 使用官方npm或yarn: 推荐使用官方npm或yarn来管理依赖。npm现在也有了npm config set registry https://registry.npm.taobao.org/这样的配置来切换到淘宝镜像,但建议仅在必要时使用,并且仅在全局配置中设置,避免影响项目依赖。

  2. 清理缓存: 如果你已经使用了cnpm并遇到了卡顿问题,可以尝试清理npm和cnpm的缓存:

    npm cache clean --force
    cnpm cache clean --force  # 如果你还保留了cnpm
    
  3. 重新安装依赖: 删除node_modules文件夹和package-lock.jsonyarn.lock文件,然后使用npm或yarn重新安装依赖:

    rm -rf node_modules
    rm package-lock.json  # 或者 rm yarn.lock
    npm install  # 或者 yarn install
    

通过这些步骤,你应该能够解决由cnpm引起的WebStorm卡顿问题。如果问题依旧,考虑检查IDE的设置或升级至最新版本。

回到顶部