我有一个关于重新 Select 的 Select 器记忆的问题.
就我对Reselect文档的理解而言,以下实现是建议的正确方法,用于记忆需要参数的 Select 器:
const selectOrdersByCustomer = createSelector(
[
state => state.orders,
(state, customerId) => customerId,
],
(orders, customerId) => {
return orders.filter(order => order.customerId === customerId);
}
);
const orders = useSelector(state => selectOrdersByCustomer(state, customerId));
我的一位同事提出了同样的 Select 者的方法:
const selectOrdersByCustomer = customerId => createSelector(
state => state.orders,
orders => {
return orders.filter(order => order.customerId === customerId);
}
);
const orders = useSelector(selectOrdersByCustomer(customerId));
(我简化了这一点,我们应用程序中的实际实现要复杂得多)
我try 将console.count('counter');
添加到使用此 Select 器的组件中,两种实现似乎都会触发相同数量的重现.
我的问题是:与第一个实现相比,第二个实现是否会对性能造成影响?