在redux reducer中过滤map内部,可以通过以下步骤实现:
const initialState = {
data: [],
};
const reducer = (state = initialState, action) => {
switch (action.type) {
case 'FILTER_MAP':
// 使用Array的filter方法过滤map内部的数据
const filteredData = state.data.filter(item => item.property === action.payload);
return {
...state,
data: filteredData,
};
default:
return state;
}
};
export default reducer;
export const filterMap = (property) => ({
type: 'FILTER_MAP',
payload: property,
});
import React from 'react';
import { connect } from 'react-redux';
import { filterMap } from './actions';
const YourComponent = ({ data, filterMap }) => {
// 在组件中使用过滤后的数据
// ...
return (
<div>
{/* 触发过滤操作 */}
<button onClick={() => filterMap('someProperty')}>
Filter Map
</button>
</div>
);
};
const mapStateToProps = (state) => ({
data: state.data,
});
const mapDispatchToProps = {
filterMap,
};
export default connect(mapStateToProps, mapDispatchToProps)(YourComponent);
这样,当你点击"Filter Map"按钮时,redux的状态会更新,过滤后的数据会传递给你的组件,你可以在组件中使用这些数据进行展示或其他操作。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云云数据库MySQL。这些产品提供了稳定可靠的云计算基础设施和数据库服务,适用于各种规模的应用场景。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云