2016-12-17 5 views
-2

Ich mag dieseunerwartetes Token {in Modul Export node.js

module.exports.create_payment = function(){ 
    console.log('create_payment') 
} 

meinen Controller schreibe aber es gibt ein Problem mit obigen Mustern. Stellen Sie sich vor Ich habe 10 Verfahren in einem Controller dann werde ich module.exports.method1 schreiben, module.exports.method2 etc ..

So zu lösen, dass ich wickeln und die Methoden geben wie unter

module.exports = { 

    return { 

     create_payment: function(req,res,next){ 

      console.log('create_payment') 

     } 
    } 
} 

Aber ich habe Fehler von unerwarteten Token, was ist los?

Antwort

3

Der Wert, den Sie module.exports zuweisen, ist ein Objektliteral, keine Funktion. Sie können keine Rückgabeanweisung darin einfügen.

module.exports = { 
    create_payment: function(req, res, next) { 
     console.log('create_payment') 
    } 
}; 
+0

wenn über Code in einer Datei Aufruf payment.js gesetzt wird, kann ich es so 'var Zahlung = verwenden, erfordern ('Zahlung'); app.post ('/ pay', payment.create_payment); ' ? –

+0

Ja. Das ist der Punkt der Exporte. – Quentin

+0

seltsam, einige, wo ich gesehen habe, Menschen verwenden Rückkehr in Controllern. Müssen Sie in express.js das enthüllende Modulmuster verwenden? seit es Modul exportiert hat. –

Verwandte Themen