我可以在州的多个区域重复使用选择器吗



假设我有一个状态区域,其中包含一个人的信息。地址、电话号码等。我为该数据结构创建选择器。现在假设我有多个状态区域需要保存该数据结构。我可以重复使用选择器吗?目前,我有很多选择者,但在顶部,他们从商店的一个部分进行选择。即选择器是否可以在公共区域定义,并在商店的不同区域使用?

谢谢Nick

如果我正确理解你的问题,那么你一定能理解。例如,定义一个"基本"选择器,如下所示:

const reusableSelector = (query, storePart) => {
return store => query(store[storePart]);
};

正如我想象的那样,你所在的州可能有这样的结构:

state
- workers
- managers
- etc.

这些收藏品存储个人物品。

query是一种可重复使用的功能,你想在多个地方使用它,比如一群人的电话号码:

const getPhoneNumbers = persons => persons.map(person => person.phoneNumber);

因此,您可以从以下一个中创建多个选择器:

const workerPhoneNumbers = useSelector(getPhoneNumbers, 'workers');
const managerPhoneNumbers = useSelector(getPhoneNumbers, 'managers');

您还可以将多个选择器与[reselect][1]等库相结合。

最新更新