如何在Deno中添加仅开发环境依赖?
在纯Deno环境中管理开发依赖的方案
1. 手动在deno.json中定义开发依赖映射
Deno目前原生没有devImports字段,但可以在deno.json中自定义该字段来区分开发依赖和生产依赖,示例配置如下:
{ "imports": { // 这里放生产环境依赖 }, "devImports": { "eslint": "npm:eslint@^8.57.0" }, "tasks": { "lint": "deno run --import-map=deno.json npm:eslint ." } }
通过npm:前缀可以直接引入npm生态的包,自定义的devImports字段能清晰区分开发依赖,同时在tasks中配置快捷命令,执行deno task lint即可运行ESLint。
2. 解决eslint: command not found报错
Deno无法直接全局调用npm包的命令,需要通过deno run来执行:
deno run npm:eslint .
如果觉得命令太长,就用上面提到的tasks配置简化调用。
3. 结合deno add --dev维护依赖
执行deno add --dev npm:eslint会将依赖信息写入deno.lock,之后手动把对应的依赖条目复制到deno.json的devImports中,这样既利用了Deno的锁文件来管理依赖版本,又能在配置文件中明确区分开发依赖。
4. 关于原生devImports的支持
目前Deno官方还在推进原生devImports字段的支持,相关问题正在处理中,在此之前可以用上述方案作为替代。
内容的提问来源于stack exchange,提问作者typed-sigterm
相关产品推荐
相关产品推荐

