file依赖引用的问题
来源:4-2 检查版本号功能开发(require加载资源类型讲解+npmlog封装)
rookie_white
2021-07-01 22:46:20
问题描述:
当前lerna项目中, 有两个被管理的模块 core 和utils,
主逻辑在core/cli中,然后core/cli引用了utils/log的包,utils/log是通过file进行引入的。
假设utils/log 对应的包名是 @white-cli/log
但是每次我执行了lerna add packageName core/cli,每次执行命令给core/cli安装依赖的时候,
然后在终端重新调用脚手架命令,每次都会抛出 cannot find module @white-cli/log不存在,
每次都需要重新在core/cli下重新执行npm link才可以,很麻烦。
当我把 core/lig 引入的依赖改为 "@white-cli/log" : "1.0.0",对应的版本号,而不是file引入。就不会出现这个问题,一切都显得正常。
感觉这个file引入有问题,不知道是不是我使用方式不对。
谢谢老师!!
1回答
扬_灵
2021-07-02
同学你好,报依赖找不到是因为在安装依赖的时候node_modules中的依赖会刷新,file格式引用的依赖会被刷掉需要重新安装,你可以在安装依赖之后在node_modules中找一下file格式引用的依赖。通过版本号的方式引用正常是因为你的依赖包已经发布上线了,引用之后在node_modules中安装的是线上版本并不是你本地的依赖。在开发时还是使用file的格式引用本地的依赖,依赖开发完成后可以发布到线上在使用线上依赖,
相似问题