npm link的简单应用

npm link的简单应用

一个项目中,会使用很多依赖,大部分依赖都是开源的第三方依赖,甚至于会有自己造轮子开发的依赖在项目中,这时候就会出现一种情况,比如我又一个自己开发的项目A,在这个项目中使用了一个自己造的轮子依赖B,他们一直相安无事相处了很久,但是有一天我对这个轮子依赖B进行了一些功能性的添加,但是我不知道这次的功能增加是否会对我的项目A产生不兼容影响,所以我需要测试一下。

那么我们有什么测试方法呢?

一种最不推荐的方法

  1. 把我们修改后的轮子依赖B发布一个beta版本
  2. 在我们的项目A中安装这个beta版本
  3. 测试

这会有什么问题呢

  • 优点:我觉得没有优点
  • 缺点:麻烦

一种相对可行的方法

  1. 项目A中通过相对路径安装依赖B
  2. 测试

这会有什么问题呢

  • 优点:简单(对于不知道npm link的情况下)
  • 缺点:如果测试发现有问题,可能多次微调依赖B,需要多次install

这就好比远程代码,在没有远程代码的时候,我需要每次都要把代码存放到指定仓库,然后换设备后再去仓库拉代码,可以但是也麻烦

一种推荐的方法

  1. 在项目A中使用软链npm link 依赖B的路径
  2. 测试

此时修改是直接同步的,就好比可以直接把代码同步到远端,换设备后直接远端同步回来,等功能开发好后,再提交到仓库

应用

  1. 在同一目录下path下创建一个my-projectmy-utils

  2. cd my-project
    npm init -y
    cd ../my-utils
    npm init -y
    
  3. my-utils目录下新建一个测试文件index.js

       function SayHi(){
           console.log("hello,我是工具")
       }
       
       module.exports.SayHi = SayHi
    
  4. my-project下建使用npm link ../my-utils

  5. 写个测试代码

    import {SayHi} from "my-utils"
    function project(){
        console.log("in project")
        SayHi()
    }
    
    project()
    
  6. 测试

    image-20220126152244806

  7. 修改一下my-utils再测试

    image-20220126152311433

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值