【发布时间】:2015-09-27 08:56:24
【问题描述】:
我正在尝试从使用 Fluxxor 的 Flux 操作中使用 jquery.ajax。我正在处理 http://fluxxor.com/guides/async-data.html 的异步示例。
调用成功(我收到了响应),但我不知道为什么它没有调度 LOAD_BUZZ_SUCCESS。
我正在替换这段代码:
var BuzzwordClient = {
load: function(success, failure) {
setTimeout(function() {
success(_.range(10).map(Faker.Company.catchPhrase));
}, 1000);
}
//...
};
与
var BuzzwordClient = {
load: function(success, failure) {
jquery.ajax({
url: "test.json",
dataType: 'json',
cache: false,
success: function(data) {
console.log("success");
console.log(data);
}.bind(this),
error: function(xhr, status, err) {
console.log("error");
}.bind(this)
});
}
//...
};
调用来自actions var:
BuzzwordClient.load(function(words) {
this.dispatch(constants.LOAD_BUZZ_SUCCESS, {words: words});
}.bind(this), function(error) {
this.dispatch(constants.LOAD_BUZZ_FAIL, {error: error});
}.bind(this));
}
我需要用其他东西包装 ajax 调用吗?客户端的加载函数应该返回什么?
【问题讨论】:
标签: ajax reactjs reactjs-flux flux