V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
weiqipeng
V2EX  ›  Node.js

问个问题佬们,如何禁止在执行 npm install 时把 node_models 下某个模块的 package.json 中定义的也给下载下来了

  •  
  •   weiqipeng · 156 天前 · 1601 次点击
    这是一个创建于 156 天前的主题,其中的信息可能已经有所发展或是发生改变。
    15 条回复    2024-10-12 16:43:44 +08:00
    Mluka
        1
    Mluka  
       156 天前
    没看懂问题,如果不下载依赖就会缺失而导致项目无法跑起来。你的目的是什么呀。
    Hasel
        2
    Hasel  
       156 天前
    +1 提问题最好带上你的需求/错误
    Aprdec
        3
    Aprdec  
       156 天前
    这个是 npm 的毛病,没法改(这也就是为什么 node_models 无比巨大的原因),你可以使用 pnpm,pnpm 通过软/硬链接的方式改变了 npm 要下载无数重复依赖的方式
    stew5566
        4
    stew5566  
       155 天前
    package.json 算是 npm 的核心了吧,所有的包都依赖这个的
    unco020511
        5
    unco020511  
       155 天前
    你是说依赖项会在机器上保存很多份?这个是正常的,npm 就是这个吊样子,换 pnpm,yarn 等
    EspoirBao
        6
    EspoirBao  
       155 天前
    虽然没说清楚到底是什么问题,盲猜 npm 上面下的包需要改。
    这种情况推荐 patch-package: https://www.npmjs.com/package/patch-package
    z0ffy
        7
    z0ffy  
       152 天前
    自己写个,pre-install & install
    weiqipeng
        8
    weiqipeng  
    OP
       74 天前
    问题解决了佬们, 我自定义的 npm 模块的 package.json 文件里多出了多余的包
    项目引用了我自定义的 npm 包结果就把多余的包下载下来了
    排查了几个小时发现的
    weiqipeng
        9
    weiqipeng  
    OP
       74 天前
    @Mluka 解决了佬 是个低级错误加上我知识面不够宽造成的
    weiqipeng
        10
    weiqipeng  
    OP
       74 天前
    @Hasel 解决了大佬
    weiqipeng
        11
    weiqipeng  
    OP
       74 天前
    @Aprdec 解决了大佬
    weiqipeng
        12
    weiqipeng  
    OP
       74 天前
    @stew5566 解决了大佬
    weiqipeng
        13
    weiqipeng  
    OP
       74 天前
    @unco020511 解决了大佬
    weiqipeng
        14
    weiqipeng  
    OP
       74 天前
    @EspoirBao 解决了大佬
    weiqipeng
        15
    weiqipeng  
    OP
       74 天前
    @z0ffy 解决了大佬
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2805 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 15:07 · PVG 23:07 · LAX 07:07 · JFK 10:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.