9

私はEmber Object Modelで計算されたプロパティに慣れています。これは、他のプロパティに依存する計算されたプロパティを指定する便利な方法です。

fullNameとに依存するfirstNameと言ってlastName、計算されたプロパティを関数としてセットアップし、変更を加えるたびにcomputeProperties呼び出すことができます。computeProperties

例:

function computeFullName(state) {
  const fullName = state.get('firstName') + state.get('lastName');
  const nextState = state.set('fullName', fullName);
  return nextState;
}

function computeProperties(state) {
  const nextState = computeFullName(state);
  return nextState;
}

// store action handler
[handleActionX](state) {

  let nextState = state.set('firstName', 'John');
  nextState = state.set('lastName', 'Doe');

  nextState = computeProperties(nextState);

  return nextState;
}

毎回余分な関数を呼び出す必要がないように、計算されたプロパティを自動的にセットアップする方法はありますか? Redux または ImmutableJS で。

4

4 に答える 4

4

reselectをチェックしてください。ストアから派生したデータを効率的に計算するための構成可能な純粋関数。Afaik では、reselect のセレクターが一般的であることが証明されれば、ある段階で Redux コアに組み込む計画があります。readme の下部にも ImmutableJS での使用例があります。

于 2015-08-02T13:50:48.167 に答える