Nodejs npm link 之后,使用 make dev 本地测试,发现添加的代码没出现

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

Nodejs npm link 之后,使用 make dev 本地测试,发现添加的代码没出现

现在有项目 A,库 B,都在本地电脑

项目 A 链接库 B 之后,能看到项目 A 出现库 B 的小箭头,也能关联到库 B,库 B 进行编辑更改之后,项目 A 内库 B 的代码也可以发生变化

执行 make dev 之后,库 B 生成了一个 min.js 文件,也有最新更改的代码,但是网页打开,发现还是最初库 B 的代码,没有进行更改,不知道为什么

请教大神!!

1 回复

针对你提到的问题,npm link 后使用 make dev 本地测试时,发现添加的代码没有生效,这通常是由于模块缓存或路径解析的问题。以下是一些可能的解决步骤:

  1. 确认链接是否成功: 确保你在全局和本地项目中都正确使用了 npm link。可以在全局和本地项目的 node_modules 目录下检查是否存在正确的符号链接。

  2. 清理缓存: 有时候,Node.js 或 npm 的缓存可能导致问题。尝试清理缓存:

    npm cache clean --force
    
  3. 检查 package.json: 确保你的本地项目 package.json 中依赖的版本号没有锁定为某个特定版本,这可能导致链接的本地开发版本被忽略。

  4. 使用绝对路径: 如果 npm link 仍然不工作,尝试直接在项目中引用本地开发版本的绝对路径。例如,在本地项目的 package.json 中,你可以这样设置依赖:

    "dependencies": {
      "your-linked-module": "file:/path/to/your/linked/module"
    }
    
  5. 重启开发服务器: 有时候,简单地重启你的开发服务器(如使用 make dev 启动的服务器)可以解决缓存问题。

  6. 检查文件监听: 确保你的开发服务器或构建工具(如 Webpack)配置了正确的文件监听器,以检测文件变化并重新编译。

如果以上步骤仍然无法解决问题,建议检查具体的构建日志或错误输出,以便进一步诊断问题。

回到顶部