我在快速应用程序中导出路由表时遇到问题。
首先在/bin/www.js文件中我得到了我的全局变量,它重新表示了路由表:
var routingTable = [];
然后创建一个简单的路由我只是使用服务器侦听事件推送新的路由对象。
server.on('listening', onListening);
function onListening() {
var addr = server.address();
var bind = typeof addr === 'string'
? 'pipe ' + addr
: 'port ' + addr.port;
console.log('Listening on ' + bind);
routingTable.push({
address: "localhost:8080",
version: 1,
name: "some-service"
});
}
当我在推送后我在console.log routingTable中获得了这个单个对象。
然后我为该变量创建了一个getter:
exports.getRouting = function() {
return routingTable;
};
此getter将导出到路径文件:
var getRoutingTable = require('../bin/www').getRouting;
使用此getRoutingTable函数后,我得到一个空数组。导出此变量的正确方法是什么,以便可以在每个其他项目文件中使用和更新?
答案 0 :(得分:0)
routingTable是否在'../ bin / www'中定义?
var routingTable = [];
...
exports.getRouting = function() {
return routingTable;
};