Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
开始时将前端文件构建到node.js Express项目中_Node.js_Backbone.js_Express_Npm - Fatal编程技术网

开始时将前端文件构建到node.js Express项目中

开始时将前端文件构建到node.js Express项目中,node.js,backbone.js,express,npm,Node.js,Backbone.js,Express,Npm,现在,我的整个web堆栈都有一个Git存储库。我有静态文件——HTML文件、JS库和Backbone.JS应用程序——从一个目录提供,如/project/static/JS。我正在使用Express的静态文件加载并将其指向/project/static 我想做的是将项目分解为前端和后端repo,当Express服务器启动时,它加载前端并提供静态文件。最好的方法是什么?我在想,我可以将前端放在一个节点模块中,并使用Github的NPM(或通过NPM链接本地)安装它,然后以某种方式引用该节点模块中的

现在,我的整个web堆栈都有一个Git存储库。我有静态文件——HTML文件、JS库和Backbone.JS应用程序——从一个目录提供,如/project/static/JS。我正在使用Express的静态文件加载并将其指向/project/static

我想做的是将项目分解为前端和后端repo,当Express服务器启动时,它加载前端并提供静态文件。最好的方法是什么?我在想,我可以将前端放在一个节点模块中,并使用Github的NPM(或通过NPM链接本地)安装它,然后以某种方式引用该节点模块中的静态文件。我听说过像Grunt.js这样的工具,也读过关于在Node中使用require.js的文章,但是正确的方法是什么呢?

我会有4个(或更多)独立的Git存储库。我不喜欢在同一回购协议中混合前端项目和后端项目。将客户端和后端分离为两个独立的项目将更干净、更便于移植和维护。但如果您想将客户端和后端混合到一个repo中,请确保将项目组织到模块布局中

1) 一次回购仅适用于api。示例:myapp api

2) 仅针对web前端的一次回购。例如:myapp网站。此回购将使用myapp api。确保您的myapp api采用某种形式的令牌来验证使用api的客户端(在本例中为myapp web)

3) 一个人买钥匙。您的应用程序将需要访问某种数据库,此repo将在myapp api和myapp web之间共享

4) 一个记录者的回购。此库用于记录错误和来自客户端的请求,将在myapp api和myapp web之间共享

希望这有帮助

我想这就是我想要的: