如何在Node.js中实现共享库?

4

我正在寻找与Windows DLL类似的概念。具体而言,假设我有一个名为encrypt的函数,我想在几个不相关的项目中共享它。如果我想要更改实现,最理想的情况是只需更改一次,每个项目都可以访问新的实现。在Node.js中是否有这样的机制?


请查看这个答案,它可能会有所帮助。 - Jasurbek Nabijonov
1个回答

2
请看这个文档,特别是“编写库”部分。
如果你正在编写一个旨在供他人使用的程序,那么在package.json文件中最重要的是指定主模块。这个模块是你程序的入口点。
此外,如果你有很多JavaScript代码,那么惯例是将它们放在项目中的./lib文件夹中。在package.json文件中指定一个主模块。当用户执行require('your-library')时,这个模块就会被加载。这个模块理应展示你库的所有功能。
如果你希望让用户从你库的“内部”加载子模块,那么他们需要指定完整的路径。这样做需要大量的工作来记录!更好的做法是简单地指定一个主模块,然后,在必要时,有方法动态加载所需内容。
例如,你可能有一个flip库,其中包含了由flip/lib/widgets/*.js文件定义的小部件对象集合。与其让你的用户执行require('flip/lib/widgets/blerg.js')来获取blerg小部件,不如像这样做:require('flip').loadWidget('blerg')。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接