我是Nodejs的新手,但主要来自.net背景。在那里,在一个解决方案中拥有多个asp.net项目是正常的。例如Web服务,Web前端,然后加载框架和共享逻辑。
现在来到nodejs我计划做类似的事情,有一个解决方案有2个项目,一个是Web服务风格应用程序,一个是前端应用程序,两者都是使用相同的框架,并在项目中有一些共享逻辑。
当前文件夹结构如下:
|- root
|- source
|- framework
|- web-service
|- web-ui
|- tests
|- build-scripts
|- package.json
现在在上面的示例框架中将包含许多共享内容,例如模型,存储库,工厂等。然后Web服务将只处理保存和公开数据,然后前端只有一个视图调用网络服务。那么上面的用例好吗?目前我只是使用jake构建并输出带有app.js文件的2个文件夹,然后单独运行,但只是想知道这是不是很糟糕的做法。
答案 0 :(得分:2)
我认为节点约定只是使每个framework
,web-service
和web-ui
独立的npm模块都有自己的package.json
文件,然后用于组合项目有一个单独的第4个模块,它将每个其他模块列为依赖项。 npm支持各种URL模式,包括使用标记版本的git(或github)存储库URL。
所以我建议:
projects/
framework/
package.json
web-service
package.json //depends on framework
web-ui/
package.json //depends on framework
uberproject/
package.json //depends on web-service, web-ui, and maybe framework as well
//Use URLs like git+ssh://git.example.com/projects/framework.git#v0.9.4
例如,如果您希望同时处理npm link
和uberproject
,还可以阅读framework
(或仅使用符号链接)。