Reactjs 给出TS2322:类型“{}”的React-Redux组件不可分配给类型?
我不确定它为什么会抱怨,因为我很确定我已经正确地连接了所有东西,我的组件类如下所示:Reactjs 给出TS2322:类型“{}”的React-Redux组件不可分配给类型?,reactjs,typescript,redux,react-router,react-redux,Reactjs,Typescript,Redux,React Router,React Redux,我不确定它为什么会抱怨,因为我很确定我已经正确地连接了所有东西,我的组件类如下所示: type SubmitLinkPopupProps = SubmitLinkPopupStore.SubmitLinkPopupState & typeof SubmitLinkPopupStore.actionCreators & RouteComponentProps<{}>; type SubmitLinkPopupAllProps = SubmitL
type SubmitLinkPopupProps =
SubmitLinkPopupStore.SubmitLinkPopupState
& typeof SubmitLinkPopupStore.actionCreators
& RouteComponentProps<{}>;
type SubmitLinkPopupAllProps = SubmitLinkPopupProps;// & InputSubmitLinkProps;
export class SubmitLinkPopup extends Component<SubmitLinkPopupAllProps, SubmitLinkPopupStore.SubmitLinkPopupState>
{
constructor(props: SubmitLinkPopupAllProps) {
super(props);
this.SubmitLink = this.SubmitLink.bind(this);
this.handleClose = this.handleClose.bind(this);
this.handleTextFieldChange = this.handleTextFieldChange.bind(this);
}
handleOpen = () => {
//...
};
handleClose = () => {
//...
};
handleTextFieldChange(e) {
//...
};
SubmitLink() {
//...
}
public render() {
//...
}
}
export default connect((state: Store.RootState) => state.submitLinkPopup, SubmitLinkPopupStore.actionCreators)(SubmitLinkPopup);
这是在我之前的React Redux项目中工作的,我不确定丢失了什么配置导致了此问题。根据错误消息,问题是RouteComponentProps;您需要将其更改为RouteComponentProps
export const actionCreators = {
//...
}
type KnownAction = RequestSubmitLinkAction | CancelSubmitLinkAction;
const submitLinkPopupReducer: Reducer<SubmitLinkPopupState> =
(state: SubmitLinkPopupState, incomingAction: KnownAction) => {
//...
}
export default submitLinkPopupReducer;
export interface RootState {
submitLinkPopup: SubmitLinkPopupState
}
const rootReducer = combineReducers({
submitLinkPopup: submitLinkPopupReducer,
})
const rootStore = createStore(
rootReducer,
applyMiddleware(middleware),
)
export default rootStore