2016-04-26 6 views
0

私はwanger npm pkgを使用していますが、うまくいきます...しかし、DIを使用するときはファイルをどのように分割するのか分かりません。ここでnode.jsとの依存性注入

は私のルートです:

var logic = require('./logic'); 
var express = require('express'); 
var bodyParser = require('body-parser'); 


/** 
* 
* Routes /api/v* 
* 
* @param {obj} wagner 
* @returns {obj} 
*/ 
module.exports = function (wagner) 
{ 

    var api = express.Router(); 
    api.use(bodyParser.json()); 

    api.get('/me', logic.me); 

    return api; 
} 

、ここではlogic.me機能です:

var me = { 
    me: function (req, res) { 
     res.send("TEST"); 
    } 
} 

module.exports = me; 

私がしたいどのような私のlogic.me関数内wagnerを使用できるようにされて...どのように私はそれを達成できますか?あなたはlogic

function meWrapper(wagner) { 
    var me = { 
     me: function (req, res) { 
      res.send("TEST"); 
     } 
    } 

    return me; 
} 

module.exports = meWrapper; 

を定義することができ、それはあなたが後でそれを使用する方法です方法です

+0

エクスポートオブジェクトではありませんが、 '引数としてwagner'受け入れ機能と'me'オブジェクトを返します。 – zerkms

+0

私に例を教えてください。 –

答えて

2

module.exports = function (wagner) 
{ 

    var api = express.Router(); 
    api.use(bodyParser.json()); 

    api.get('/me', logic(wagner).me); 

    return api; 
} 
+0

偉大な、それは動作します!ありがとう –