如何拆分单片节点.js javascript
How to split monolithic node.js javascript
我有一个不断增长的节点.js服务器应用程序,我想把它分成几个文件。下面是一个工作代码片段,演示了整体式服务器.js大致的样子:
var express = require('express');
var app = express();
// other initialization code etc
//************** start of part to be moved foo.js
var fooTestData = {data: "data", id:1};
app.get("/foo/ajax", function(req, res) {
res.json(fooTestData);
});
// more REST stuff and other foo-specific code
//************** end of part to be moved
// more stuff which remains in server.js
// http://localhost:8888/foo/ajax
app.listen(8888);
理想的答案有两段具有相同功能的代码:移动指示部分后.js服务器的外观,以及复制的代码和任何需要的额外代码后 foo.js 的外观。
foo.js
var fooTestData = {data: "data", id:1};
exports.setApp = function (app) {
app.get("/foo/ajax", function(req, res) {
res.json(fooTestData);
});
// more REST stuff and other foo-specific code
};
新服务器.js
var express = require('express');
var app = express();
require('./foo.js').setApp(app);
// other initialization code etc
// more stuff which remains in server.js
// http://localhost:8888/foo/ajax
app.listen(8888);
这是一个简单的例子。如果你需要一些更复杂的东西,你可能想看看github上的其他快速程序。这可能是一个很好的灵感来源。
我建议你看看一些基于表达式(MVC)的框架。查看框架列表。此外,如果您正在执行Web服务并通过RESTfull请求与之通信,则可能需要检查sails.js(基于快速的框架)。请注意,sails 不仅限于 RESTfull 请求,可以帮助您开箱即用地扩展项目。
祝你好运!
相关文章:
- js循环遍历单击的元素子节点
- 如果某个值在另一个节点中,我如何每秒自动单击一个链接
- D3.js-单击节点后无法设置节点标签
- 通过 AJAX 发送表单,HTML 节点选择用于数据发送
- 在带有 标记的树节点上以编程方式触发单击事件
- 检测单击子节点并发送槽事件处理程序
- 节点.js表单更新有和没有 ajax
- AlloyUI:对节点做出反应 - 在图表生成器中单击事件
- 使用 ajax 将单选按钮的值发送到节点.js
- 在d3.js中单击URL为的节点时无法打开弹出窗口
- 如何在D3Javascript中单击节点时显示和隐藏链接和节点
- 动态地将单击的节点作为加载节点的父节点 - jsTree
- 如何从客户端接收节点.js中的 POST 表单数据
- 连接到表单提交节点 js 上的套接字
- 如何拆分单片节点.js javascript
- 单片骨干路由器
- 如何获得post数据从html表单在节点与express4
- 在d3plus中单击节点时,用过滤后的数据重新绘制环
- 25mb大小的PDF在单片阅读器中无法读取
- 如何在react native firebase中监听单个子节点的变化