पर Redux और React-राउटर का उपयोग करने का तरीका निर्धारित नहीं कर सकता है, मैं टाइपस्क्रिप्ट सीखना शुरू कर रहा हूं और यह एक ऐसा व्यवहार है जिसे मैं समझ नहीं पा रहा हूं।एक ही घटक
Type 'ComponentClass<{}>' is not assignable to type 'StatelessComponent<void | RouteComponentProps<any>> | ComponentClass<void | RouteComponentProps<a...'.
Type 'ComponentClass<{}>' is not assignable to type 'ComponentClass<void | RouteComponentProps<any>>'.
Type '{}' is not assignable to type 'void | RouteComponentProps<any>'.
Type '{}' is not assignable to type 'RouteComponentProps<any>'.
यहाँ मेरी अनुप्रयोग घटक है:
मैं यह त्रुटि आई
interface AppProps extends React.Props<void> {
todos: TodoItemData[];
actions: typeof TodoActions;
};
interface AppState {
/* empty */
}
class App extends React.Component<AppProps, AppState>{
render() {return (<div></div>);
}
}
function mapStateToProps(state: RootState) {
return {
todos: state.todos
};
}
function mapDispatchToProps(dispatch) {
return {
actions: bindActionCreators(TodoActions as any, dispatch)
};
}
export default connect(
mapStateToProps,
mapDispatchToProps
)(App);
अगर मैं शून्य से मेरी अनुप्रयोग घटक AppProps की घोषणा में बदलने के लिए या प्रतिक्रिया। प्रॉप्स मुझे कोई त्रुटि नहीं मिली लेकिन मेरे पास हमेशा ऐपप्रॉप के साथ एक है।
मुझे समझ में नहीं आता कि यह क्यों काम नहीं कर रहा है, AppProps React.Props से विस्तार कर रहा है। क्या आपने गलती देखी?
प्रतिक्रिया-राउटर v4 टाइपिंग बहुत ही नई हैं। मैं देखता हूं कि वे प्रोप में 'रूट कॉम्पोनेंटप्रॉप' इंटरफेस जैसे कुछ का उपयोग करते हैं। उचित उपयोग करने के लिए उन्हें अपने परीक्षणों की जांच करें - https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/react-router/test – niba
यदि आप निर्दिष्ट करते हैं कि आप किस प्रतिक्रिया-राउटर का उपयोग कर रहे हैं तो यह मदद करेगा (और स्पष्टीकरण) । – nbkhope