2015-11-17 102 views
0

我在這有一個節點文件,我想單獨的服務節點JS單獨的服務文件

var router = express.Router(); 
router.get('/v1/config', function (req, res) { 
    var config = require('../service/config'); 
    config.getAllConfig().then(function (data) { 
    res.send(data); 
    }); 

在服務配置文件

var config = {}; 
config.getAllConfig = function(){ 
    return some_json; 
}; 
module.exports = config; 

但它拋出500內部服務器error.How來分隔在節點j中服務

+0

你'config.getAllConfig'不一個承諾,所以你不能使用。然後 – rkmax

+0

仍然同樣的問題@rkmax –

+0

你使用module.exports =路由器在單獨的服務的結尾,並正確地在你的主文件中調用?你能否發佈你從控制檯得到的錯誤? – rkmax

回答

1

您將不會有then()方法,因爲您沒有返回承諾,因此您必須將其刪除。

我做了一個快速測試,這只是罰款:

main.js:

var config = require('./test'); 
console.log(config.getAllConfig()); 

test.js:

var config = {}; 
config.getAllConfig = function(){ 
    return "Test"; 
}; 
module.exports = config;