我正在为我的观点创建一个flux
应用程序。react
这是我的视图代码
function getUsers() {
return {
users: UserStore.getUsers()
};
}
var UsersList = React.createClass({
getInitialState: function() {
return getUsers();
},
componentDidMount: function() {
UserStore.addChangeListener(this.onChange);
},
onChange: function() {
this.setState(getUsers());
},
render: function() {
...
}
});
module.exports = UsersList;
我getUsers
发生在我的商店里。这是该代码:
getUsers: function() {
var that = this;
$.ajax({
url: 'http://localhost:9000/users',
}).success(function(data) {
users = data.users;
that.emit(CHANGE_EVENT);
});
return users;
}
最终发生的事情是我陷入了无限循环。我出去拿 my users
,然后emits
是一个 change 事件,然后onChange
再次调用 my ,开始循环。这样做的正确方法是什么flux
?其他人使用的模式是什么?