javascript - 变量在javascript中不会改变
问题描述
我有这样的代码,并且console.log(token)
显示undefined。
var token;
store.get('userTokens').then(res => {
token = res.idToken.jwtToken;
console.log(res.idToken.jwtToken);
});
switch (type) {
case 'get':
console.log(token);
Axios.get(baseUrl + url, {
headers: {
Authorization: `Bearer ${token}`,
extraHeaders,
},
})
.then(res => {
console.log(res);
return res;
})
.catch(err => {
console.log(err);
return err;
});
break;
}
解决方案
在解决(或拒绝)switch
promise from 后,您需要将语句移动到某个位置。store.get
var token;
store.get('userTokens').then(res => {
token = res.idToken.jwtToken;
switch (type) {
case 'get':
console.log(token);
Axios.get(baseUrl + url, {
headers: {
Authorization: `Bearer ${token}`,
extraHeaders,
},
})
.then(res => {
console.log(res);
return res;
})
.catch(err => {
console.log(err);
return err;
});
break;
}
});
或者您可以使用await
等待store.get
函数返回res
推荐阅读
- android - 如何设置不同的工具栏并在片段中隐藏上一个工具栏
- python - 如何从树视图中删除选定的行,以及同时从列表中删除元组?
- java - org.apache.poi.ooxml.schemas 找不到 SchemaTypeSystemImpl
- html - 存储和运行 html 的手机应用程序
- alfresco - Alfresco 错误 alfresco.fileupload 不是构造函数
- amazon-web-services - 在 aws ec2 上重定向后 codeigniter 3.1.11 会话数据丢失
- python - Python 新手。这个模数运算符我做错了什么?我收到语义错误
- reactjs - 构建的反应代码对逆向工程是否安全?
- html - “详细信息”标签的标记对我隐藏。如何避免?
- scala - Scala Play JSON:将哈希图转换为 json 对象而不是数组