Я работаю над своим первым приложением для реагирования / рефлюкса, поэтому я могу подходить к этой проблеме совершенно неправильно. Я пытаюсь вернуть обещание из обработчика действий хранилища рефлюкса. Это минимальный код, который представляет, как я пытаюсь это сделать. Если я покажу это в браузере, я получу сообщение об ошибке, говорящее о том, что обещание никогда не перехватывается, потому что результат функции onLogin не передается обратно при инициации действия. Как лучше всего это сделать?
var Reflux = require('reflux');
var React = require('react/addons')
const Action = Reflux.createAction();
const Store = Reflux.createStore({
init: function() {
this.listenTo(Action, this.onAction);
},
onAction: function(username, password) {
var p = new Promise((resolve, reject) => {
reject('Bad password');
});
return p;
}
});
var LoginForm = React.createClass({
mixins: [Reflux.connect(Store, 'store')],
login: function() {
Action('nate', 'password1').catch(function(e) {
console.log(e); // This line is never executed
});
},
render: function() {
return (
<a onClick={this.login} href="#">login</a>
)
}
});
React.render(<LoginForm />, document.body);