dist /文件夹中的JS文件与root文件夹中的JS文件有什么区别?

我对NodeJS是全新的,我不知道这两者之间有什么区别。

例如,在这个项目( https://github.com/fikriauliya/hipku )中,我们有index.jsdist/hipku.js 。 除了最后一行之外,它们是相似的:

module.exports = publicMethods; vs return publicMethods;

我想dist/hipku.js是从index.js生成的? 它是如何生成的,为什么需要生成?

这取决于你想如何使用这个包,在浏览器或服务器端。

  • 服务器端

index.js是NPM包的入口。 当你require('hipku') ,实际上require('hipku')定位文件模块node_modules/hipku ,运行index.js结束,对象module.exports

  • 浏览器

只需通过<script>dist/hipku.js加载到您的浏览器中,它会将hipku注册到您的全局名称空间中,然后就可以使用它的API。

在这种情况下,dist文件夹中的东西通常是从index.js构build的产品。 你会注意到它被缩小了,那个文件夹最终会被用在生产站点上。 如果你看一下package.json文件,你会注意到index.js是主要的文件,所以如果你正在做任何编辑,那就是这样做的地方。