私のNotificationCenterコンポーネントの小道具として、通知の配列があります。TypeScript Redux React:コンポーネントの子を反復処理する方法
ユーザーが通知をクリックすると(「すべてを読み取る」ボタンで)、「isRead = true」とマークされ、UIで別の色で再表示されます。
私はすでにすべて(アクション、イベントなど)を行っていましたが、私はNotifications propを再レンダリングできるように、リジェクタを起動する必要があります。
これは、これまでの私のコードです:
if (isType(action, ActionTypes.MarkNotificationsAsRead)) {
return Object.assign({}, state, {
notifications: state.notifications.map(n => action.payload.<<HELP>>)
} as INotificationCentreState);
「state.notificationsは、」使用可能なすべての通知と私の通知小道具です。
"action.payload"は、一致する必要がある通知のIDを含む文字列配列で、 'notification.isRead = true'に変更します。
ここで私が主張している主な問題は、通知リストを変更することができず、.map()の仕組みが完全にはわからないことです。
誰でも私にヒントを教えてもらえますか?私は私の問題がはっきりしていることを願う
ありがとうございます!
ありがとうであるかどうかに応じて
isRead
を切り替えることができ!私はちょうどそれがIsReadプロパティをトグルしていたので、最後に条件を追加する必要があったが、それは魅力として働いた! 'IsRead:action.payload.indexOf(n.Id)> -1? true:n.IsRead' –