Javascript Module.exports函数返回';未定义';对于变量
我有以下已导出的js文件:Javascript Module.exports函数返回';未定义';对于变量,javascript,node.js,Javascript,Node.js,我有以下已导出的js文件: module.exports = { setClientAuthToken: function(authToken) { setClientAuthToken(authToken); }, getClientAuthToken: function() { getClientAuthToken(); } }; var clientAuthToken; function setClientAuthToken(authToken) {
module.exports = {
setClientAuthToken: function(authToken) {
setClientAuthToken(authToken);
},
getClientAuthToken: function() {
getClientAuthToken();
}
};
var clientAuthToken;
function setClientAuthToken(authToken) {
clientAuthToken = authToken;
}
function getClientAuthToken() {
console.log('here!!!!!!');
console.log('auth token' + clientAuthToken);
if (!clientAuthToken) {
console.error("Client Auth Token has not been set");
} else {
return clientAuthToken;
}
}
这两个函数都工作并成功调用,但从getClientAuthToken
返回的clientAuthToken
变量为“未定义”
当我在函数本身中记录auth令牌时,我可以看到它已被正确设置。我做错了什么?是否需要导出模块中的变量。是否也导出
但是从getClientAuthToken返回的clientAuthToken变量
是“未定义的”
因为你没有归还任何东西
将return
添加到函数getClientAuthToken
:
module.exports = {
setClientAuthToken: function(authToken) {
setClientAuthToken(authToken);
},
getClientAuthToken: function() {
return getClientAuthToken(); // <-- return
}
};
module.exports={
setClientAuthToken:函数(authToken){
setClientAuthToken(authToken);
},
getClientAuthToken:函数(){
返回getClientAuthToken();//
但是从getClientAuthToken返回的clientAuthToken变量
是“未定义的”
因为你没有归还任何东西
将return
添加到函数getClientAuthToken
:
module.exports = {
setClientAuthToken: function(authToken) {
setClientAuthToken(authToken);
},
getClientAuthToken: function() {
return getClientAuthToken(); // <-- return
}
};
module.exports={
setClientAuthToken:函数(authToken){
setClientAuthToken(authToken);
},
getClientAuthToken:函数(){
return getClientAuthToken();//getClientAuthToken:function(){getClientAuthToken();}
没有返回值。您可以编写getClientAuthToken:getClientAuthToken
,因为不需要额外的函数。getClientAuthToken:function(){getClientAuthToken();}
没有返回。您可以编写getClientAuthToken:getClientAuthToken
,因为不需要额外的函数。我们都去过:)乐于帮助我们都去过:)乐于帮助