如果有的话。我不是真正参与网络技术,而是必须了解Node中其他人编写的一些糟糕的代码。
答案 0 :(得分:0)
执行npm init后,所有node.js应用程序都是npm模块。在那之后,您可以通过执行npm publish来发布模块,假设您在package.json中为其指定了唯一的名称。
如果该应用并不意味着返回任何内容,则无需导出任何内容。但是,它几乎总是值得导出某些以允许进行单元测试,而不仅仅是将应用程序作为http服务器启动并发送请求。
根据是否需要将应用程序作为模块或作为应用程序执行,修改应用程序的运行方式也是有用的。例如,假设我有一个快速休息api服务器。我可以在api.example.com
上将其作为独立服务器运行,然后将需要到另一个应用程序中并直接从该应用程序运行它以避免CORS问题而无需重复代码或处理git子模块相反,我只是简单地将api安装到需要它的应用程序中,并像路由器一样附加它。 www.example.com/api
app.use('/api', require('@myusername/api.example.com'))