use*_*993 0 angularjs ngrx ngrx-store-4.0
有没有办法将参数传递给ngrx选择函数?
以下是我的用例:
我正在维护商店中的评论列表.
我写了一个组件来代表一个评论.因此,一个CommentComponent知道组件对象的id
每条评论都会有像LikeBy,reportedBy,...等属性.在UI中,我使用*ngFor显示所有组件
现在我希望我的CommentComponent只使用组件的id订阅一个注释对象.
现在我正在订阅顶级组件中的所有注释,并将每个注释作为输入传递给CommentCompoent.
当前的方法并不干净,因为角度变化检测策略(即使我使用onPush)必须为所有注释呈现DOM,即使只有一个注释发生变化.
感谢我可以将注释id传递给选择器函数的任何建议,以便每个CommentComponent只能订阅一个注释.
在此先感谢Sudhakar
小智 5
是的,您可以将参数传递给ngrx选择器,您可以这样做
从组件方面
this.store.select(getComments(user_id));
Run Code Online (Sandbox Code Playgroud)
从选择器方面
export const getComments = (user_id) => createSelector(
getData,
(store) => store.comments
);
Run Code Online (Sandbox Code Playgroud)