【发布时间】:2023-03-21 12:21:01
【问题描述】:
最近我看到了一个库(react-3d-components),其中包含一些 d3 react 组件和一些基本图表可供使用。这是一组很酷的组件。
但是,当我想查看源代码时,因为文档还不够完整,并且当您想查看如何扩展组件时,例如,您发现自己正在查看代码的转译版本。不太好。我想看看源代码的人类可读版本。美好的。通常包都有内置的源代码,因此您只需在 IDE 中找到该文件的人类可读版本即可。如果你幸运的话,你有源地图。但这就是复杂的地方。
这个模块,在 github,有他的整个人类可读的源代码,它很好而且正确,而且,因为一个 .npmignore 文件,它只是发布文件的转译版本。当我看到这个我正要创建一个新问题时,当我意识到这家伙有一个观点:它通过不打包不必要的文件来减小包大小。但这适用于运行时,在开发时(在我的计算机中)我想要整个源代码和源映射,以便我可以浏览代码并阅读它。这也可能适用于某些资产。我认为该软件包的某种开发版本会很好。
在此处查看忽略行: https://github.com/codesuki/react-d3-components/blob/master/.npmignore#L2
所以我想知道......当我创建一个库时应该如何创建一个库?有一个开发包版本和一个生产/默认版本? (例如mypackage-with-sources@1.0-dev)或者我应该把它留给IDE并使用一些插件,以某种方式使用http将源代码与repo页面集成在一起?还是 npm 对此提供了我不知道的官方支持? (我试图搜索它我找不到任何东西)
我也看过这篇文章:Publish development version of NPM package
但它没有提供一个好的解决方案。最有说服力的一种是使用 alpha 或 beta 等预发布标签,但这是不正确的。另一种解决方案建议安装 github/vendor 存储库,这可能是正确的,但对于开发目的来说不方便和不舒服(更重要的是,并非总是可用,并非所有 npm 包都来自已知/可访问的 http 存储库)。
除了具体答案之外,任何关于此的最佳实践(有理由)都会受到好评。
谢谢
【问题讨论】:
标签: javascript node.js npm