Я не могу получить доступ к свойству из mapDispatchToProps
, когда я использую this.props.updateCar(car)
, он говорит:
Свойство 'updateCar' не существует для типа 'Readonly & Readonly <{children ?: ReactNode;}> '
Вот мой код:
import * as React from "react";
import { RootState } from "src/reducers";
import { updateCar } from "src/Car/actions";
import { CarState } from "src/Car/reducers";
import { connect } from "react-redux";
const mapStateToProps = (state: RootState) => ({
car: state.car
});
const mapDispatchToProps = (dispatch: any) => ({
updateCar: (car: CarState) => dispatch(updateCar(car))
});
type StateProps = ReturnType<typeof mapStateToProps>;
type MapDispatchToProps = typeof mapDispatchToProps;
type Props = StateProps & MapDispatchToProps;
class CarContainer extends React.Component<Props> {
updateCar = () => {
const car: CarState = {
price: 1,
name: "Mercedes"
};
this.props.updateCar(car);
};
render() {
return (
<div>
{this.props.car.name}
<button onClick={this.updateCar}>UPDATE</button>
</div>
);
}
}
export default connect<StateProps, MapDispatchToProps>(
mapStateToProps,
mapDispatchToProps
)(CarContainer);