【发布时间】:2016-11-16 14:59:37
【问题描述】:
我有一个通知数组作为我的 NotificationCenter 组件的道具。
当用户点击任何通知(或“标记为已读”按钮)时,应将其标记为“isRead = true”,然后在 UI 上用另一种颜色重新呈现。
我已经做了所有事情(动作、事件等),但现在我需要触发 Reducer,以便我的 Notifications 道具可以重新渲染。
这是我目前的代码:
if (isType(action, ActionTypes.MarkNotificationsAsRead)) {
return Object.assign({}, state, {
notifications: state.notifications.map(n => action.payload.<<HELP>>)
} as INotificationCentreState);
“state.notifications”是我的 Notification 道具,包含所有可用的通知。
“action.payload”是一个字符串数组,包含我应该匹配的通知的 ID,然后修改为 'notification.isRead = true'。
我在这里遇到的主要问题是我无法改变我的通知列表,而且我不完全确定 .map() 是如何工作的。
谁能给我一个提示?我希望我的问题很清楚。
谢谢!
【问题讨论】:
标签: javascript typescript react-redux