Javascript 我应该在npm发行版中包含我的项目源文件吗?
有几个项目将其源代码包含在NPM分发包包包中。例如,React在Javascript 我应该在npm发行版中包含我的项目源文件吗?,javascript,npm,Javascript,Npm,有几个项目将其源代码包含在NPM分发包包包中。例如,React在lib文件夹中包含其未统一/未构建的javascript文件,但它也有一个包含构建文件的dist文件夹 这是一种好的做法吗 在缺点方面,我认为这会增加下载包所需的时间和磁盘消耗。 (这就是我通常将源代码文件夹添加到.npmignore文件的原因) 但我问自己,为什么这么多图书馆这么做?优点是什么?我不确定这个问题是否真的属于这里提出的问题,主要是因为它是基于观点的,可能更像是一个讨论。但这是我的2美分: 我相信这些库中的大多数都添加
lib
文件夹中包含其未统一/未构建的javascript文件,但它也有一个包含构建文件的dist
文件夹
这是一种好的做法吗
在缺点方面,我认为这会增加下载包所需的时间和磁盘消耗。
(这就是我通常将源代码文件夹添加到.npmignore
文件的原因)
但我问自己,为什么这么多图书馆这么做?优点是什么?我不确定这个问题是否真的属于这里提出的问题,主要是因为它是基于观点的,可能更像是一个讨论。但这是我的2美分: 我相信这些库中的大多数都添加了源代码(部分是因为它们是开源的),以帮助调试。它们通常(但不总是)与.map文件捆绑在一起 如果您这样想:任何使用您的发行版的人实际上只需要“一次”安装它,因为他们可能不会在每次使用它时都安装它,而是在他们想要干净地部署他们的项目或只是在安装它时安装它 另一个需要考虑的问题是:你们的发行量有多大?它真的会如此之大以致于它会减慢安装时间吗 至于空间,在几乎任何现代机器上,几MB的空间都会被忽略 我个人认为包含源代码也是一种很好的做法,我喜欢知道库是如何做的,我喜欢能够选择查看我的代码可能导致库抛出错误的原因。但我相信有很好的理由不这样做 tl;dr
- 他们这样做是为了帮助开发人员进行调试
- 除非你的项目真的需要很长时间才能安装,否则别担心
- 除非你的项目超大型,否则别担心
- 作为一名开发人员,当项目中包含它时,我喜欢它,但“良好实践”是相当固执己见的,这取决于具体情况
- 他们这样做是为了帮助开发人员进行调试
- 除非你的项目真的需要很长时间才能安装,否则别担心
- 除非你的项目超大型,否则别担心
- 作为一名开发人员,当项目中包含它时,我喜欢它,但“良好实践”是相当固执己见的,这取决于具体情况