用的ui框架为antd,使用的组件为table,用了typescript和react-redux
请问如何在mapStateToProps中使用mapDispatchToProps里的函数
如下图
因为需要用columns中的数据渲染table组件,所以数据放在mapStateToProps中,在Cart组件里通过this.props来使用。
import { stateType } from "./store/index"
import Bread from './component/bread'
import { Table, Button } from 'antd';
interface Iprops {
data: aGoods_list[],
columns: object[]
}
class Cart extends Component<Iprops> {
render() {
const { data, columns} = this.props
return (
<div>
{/* 导航 */}
<Bread title="购物车" />
{/* 购物车 */}
{
data.length === 0
?
<div>购物车里什么也没有哦</div>
:
<Table
columns={columns}
dataSource={data}
rowKey={(item, index) => String(index)}
pagination={false}
bordered={true}
/>
}
</div>
)
}
}
const mapStateToProps = (state: stateType) => {
return {
data: state.listReducer,
columns: [
{
title: '操作',
dataIndex: 'id',
align: 'center' ,
render: (id: number) => <Button type="danger" onClick={() => { }}>删除</Button>
}
]
}
}
const mapDispatchToProps = (dispatch: Dispatch) => {
return {
fnDelete(){
console.log("呵呵呵");
}
}
}
export default connect(mapStateToProps, mapDispatchToProps)(Cart);