需要提前确定是针对nodejs还是浏览器js吗? 还是说,任意开发,到时候,既可以roullup打包成esm也可以打包成cjs?

作者站长头像
站长
· 阅读数 9

想要开发一个npm库,请问下,1、需要提前确定是针对nodejs还是浏览器js吗?还是说,任意开发,到时候,既可以roullup打包成esm也可以打包成cjs?

2、是否有一些教程指导如何开发一个属于自己的npm库呢?

3、npm管理的不仅仅是nodejs的库,还有浏览器javascript的库是吗?


更新-01

比如,我们的库,没有使用OS的API(也就是说是可以nodejs和浏览器js都能使用的);我们需要打包成esm和cjs都打包一份是吗?(这样import 和 require都可以引用)

回复
1个回答
avatar
test
2024-07-01
  1. 要看你用哪些 API,比如,你要操作文件系统,用 fs,那就只能跑在 node.js;如果你要用 window.xxx,比如 localStorage,那就只能跑在浏览器
  2. 如果是纯数据,用标准 JS 的语法元素,那就无所谓
  3. 我之前做过一个视频,可以看看:Node.js 开发 RAR 解压缩命令行工具
  4. 是的,所有的 js 仓库,都可以托管到 npm
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容