我正在使用JavaScript
的异步/ promise方法以下是我的代码片段:
var func = new instance.web.Model("session.table").get_func("check_session_state");
func(session_id).then(function(res) {
localStorage.setItem('session_state', res);
});
if (localStorage.getItem('session_state') == inactive)
alert("Session Inactive !");
问题在于'如果'在设置session_state变量之前调用condition,并抛出一个错误。在继续执行之前,如何确保结果可用?
答案 0 :(得分:1)
如果您想确保它也设置为.then()
您的if代码:
var func = new instance.web.Model(" session.table")。get_func(" check_session_state");
func(session_id)
.then(function(res) {
localStorage.setItem('session_state', res);
})
.then(function(){
if (localStorage.getItem('session_state') == inactive) {
alert("Session Inactive !");
}
});
我还建议jshinting您的代码。
答案 1 :(得分:0)
将if条件移动到回调函数中。
func(session_id).then(function(res) {
localStorage.setItem('session_state', res);
if (localStorage.getItem('session_state') == inactive)
alert("Session Inactive !");
});