[英]Calling a function which is inside a exported function (Node.js)
[英]Calling a function inside a function in node js
我想訪問 Node js 中的函數內的函數。 下面是我的 one.js:-
module.exports.user1 = ()=>{
updateNewUser:(req,res,next)=>{
console.log("User1")
}
}
module.exports.user2 = ()=>{
updateNewUser:(req,res,next)=>{
console.log("User2")
}
}
我在 two.js 中調用函數:-
var one = require('one.js');
console.log(one.user1.updateNewUser)
我想在 one.js 中訪問 updateNewUser。 任何幫助,將不勝感激。
module.exports = {
user1: {
updateNewUser: (req, res, next) => {
console.log("User1")
}
},
user2: {
updateNewUser: (req, res, next) => {
console.log("User2")
}
}
}
const one = require('./one.js')
one.user1.updateNewUser(<p1>, <p2>, <p3>)
我建議您將one.js
更改為:
module.exports = {
user1: (req, res, next) => {
console.log("User1")
},
user2: (req, res, next) => {
console.log("User2")
}
};
在two.js
:
let one = require('./one');
one.user1(); //Outputs: User1
one.user2(); //Outputs: User2
這更干凈,但如果你真的想要一個函數內部的函數,那么:
module.exports = {
user1: () => {
return (req, res, next) => { // Added return
console.log("User1")
}
},
user2: () => {
return (req, res, next) => { // Added return
console.log("User2")
}
}
};
注意:我添加了一個return
關鍵字,以便我們可以訪問內部函數,這是您在one.js
中缺少的一件事
你在two.js
調用它:
let one = require('./one');
one.user1()(); //Outputs: User1
one.user2()(); //Outputs: User2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.