1

React アプリに Alt を実装しようとしています。現在、私はそれをチェックしており、チュートリアルに従っていくつかのことを試しました。今、ストアがアクションを認識しないという問題に悩まされています。

これはアクション クラスです。

import alt from '../libs/alt';
import WishSource from '../sources/WishSource';

class WishActions {
  fetchWishes() {
      this.dispatch();
      WishSource.fetch()
        .then((wishes) => {
          this.actions.fetchWishesSuccess(wishes);
        })
        .catch((err) => {
          this.actions.fetchWishesFailed(err);
        });
  }
  fetchWishesSuccess(wishes) {
    this.dispatch(wishes);
  }
  fetchWishesFailed(err) {
    this.dispatch(err);
  }
}
export default alt.generateActions(WishActions);

次のように、ストアでこれらのアクションをバインドしようとします。

import alt from '../libs/alt';
import WishActions from '../actions/WishActions';

class WishStore {
  constructor() {
    this.wishes = [];
    this.errorMessage = null;

    this.bindListeners({
        handleFetchWishes: WishActions.FETCH_WISHES,
        handleFetchWishesSuccess: WishActions.FETCH_WISHES_SUCCESS,
        handleFetchWishesFailed: WishActions.FETCH_WISHES_FAILED
    });
  }
  handleFetchWishesSuccess(wishes) {
    this.wishes = wishes;
    this.errorMessage = null;
  }
  handleFetchWishes() {
    this.wishes = [];
  }
  handleFetchWishesFailed(err) {
    this.errorMessage = err; 
  }
}

export default alt.createStore(WishStore, 'WishStore');

私は私にエラーを与え続けます

「無効なアクション参照が渡されました」

問題は bindListeners 関数のどこかにあります。

bindActions を試すと、次のように表示されます。

「_WishActions2.default.fetchWishes は関数ではありません」

これはビューにあります。ここで私WishActions.fetchWishes()componentDidMount()

ここで何がうまくいかないのか、頭を悩ませることはできません。チュートリアルと他の例を見ると、これはうまくいくはずです。

誰かがここで私を助けて、何が悪いのか説明してもらえますか?

4

1 に答える 1