2017-12-19 17 views
0

私は私が正しくすべてをフックアップしましたかなり確信しているとして、それは文句だ理由を次のように、私のコンポーネントクラスがあり、正確にはわからない:TS2322を与えるReact-Reduxコンポーネント:タイプ '{}'はタイプに割り当てられませんか?

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); 

と減速は、次のようになります。

export const actionCreators = { 
     //... 
} 

type KnownAction = RequestSubmitLinkAction | CancelSubmitLinkAction; 


const submitLinkPopupReducer: Reducer<SubmitLinkPopupState> = 
    (state: SubmitLinkPopupState, incomingAction: KnownAction) => { 
      //... 
    } 

    export default submitLinkPopupReducer; 

これは、すべての店舗にフックアップしています:これは私が働いていた以前のリアクト - Reduxのをプロジェクトに取り組んでいた

export interface RootState { 
submitLinkPopup: SubmitLinkPopupState 
} 

const rootReducer = combineReducers({ 
submitLinkPopup: submitLinkPopupReducer, 
}) 

const rootStore = createStore(
    rootReducer, 
    applyMiddleware(middleware), 
) 

export default rootStore 

、私は設定をmが何であるかわからないんだけどこの問題の原因となっています。

答えて

1

エラーメッセージに基づいて、問題はRouteComponentProps<any>

に変更する必要があります。
関連する問題