6
के साथ एक उच्च आदेश घटक मैं निम्नलिखित अस्थायी है टाइप करने के लिए कैसे:प्रवाह
export default (keys: Array<string>) =>
(WrappedComponent: React.Component<*, *, *>) => (props: Object): React.Element<*> => {
if (hasNotYetLoadedProps(keys, props)) {
return (
<div
style={{
textAlign: 'center',
display: 'flex',
justifyContent: 'center',
alignItems: 'center',
height: '100%',
}}
>
<div>Loading</div>
</div>
)
}
return <WrappedComponent {... props} />
}
है कि या तो मूल घटक या एक लोडिंग सूचक प्रस्तुत करना। वास्तविक प्रवाह प्रकार घोषणा के साथ मुझे यह त्रुटि मिलती है:
React element `WrappedComponent`. Expected React component instead of React$Component
अंतिम पंक्ति में। आने वाले घटक का सही प्रकार क्या होगा?
हाय की जरूरत है आप एक छोटे से अपने जवाब का विकास कर सकता है? रिएक्ट $ घटक, ReactClass, $ Eleact पर प्रतिक्रिया के बीच क्या अंतर है? नोट: यहां एक एचओसी के लिए टाइप करने का एक उदाहरण दिया गया है जो कक्षा लौटाता है, और ऐसा लगता है कि आपके उत्तर 'निर्यात कॉस्ट कुछ एचओसी = (कुछ कॉम्पोनेंट: रीक्टक्लास <*>): कक्षा <$ घटक प्रति प्रतिक्रिया <*, *, *>> => ( कक्षा React.PureComponent {... ' –
स्पष्ट रूप से, ReactClass प्रकार की जांच को फेंकता है: https://github.com/facebook/flow/issues/2159 –