我的完整代码在http://pastebin.com/xwJ2zi2y。我正在尝试做的,当Ajax的值刷新flash_token时,它应该调用order_list函数。当我刷新页面时,它给出order_list函数的输出一次,但是当它启动间隔时,refresh_token它在pastebin代码中的第94行给出错误“未捕获的TypeError:无法读取未定义的属性'标记'”。并且没有运行order_list函数,当refresh_token的值发生变化时。 提前谢谢。
答案 0 :(得分:0)
您需要在成功回调中存储用法的上下文。这是你的固定功能:
refresh_token : function(){
var self = this;
$.ajax({
type: 'GET',
url: "/order/refresh",
headers: {
Accept : "application/json",
"Content-Type": "application/json"
},
success: function (resp){
var newToken = resp;
console.log(newToken); //it give the value of refresh eg. ["20150925313"]
if(newToken != self.state.token){
self.setState({ token: newToken});
// console.log(this.state.resp);
}
}
});
},
答案 1 :(得分:-1)
shouldComponentUpdate帮助我解决此问题。在渲染函数之前看到下面的代码。
shouldComponentUpdate:function(nextProps,nextState){return true; },
我的完整运行代码在http://pastebin.com/xwJ2zi2y。 感谢