Я пытаюсь использовать полиморфизм для компонентов React с наследованием, но вижу ошибку «Этот тип несовместим с некоторыми несовместимыми экземплярами V».
Вот код:
// @flow
import React, { Component } from 'react'
type BaseProps = {
name: string
}
type BaseState<T> = {
error: string,
value: ?T,
}
class Base<Props, V> extends Component<any, BaseProps & Props, BaseState<V>> {
state = {
error: '',
value: null,
}
render() {
return <div>this.props.name</div>
}
}
type ExtendedProps = {
foo: string,
}
class ExtendedBase extends Base<ExtendedProps, string> {
render () {
return <div>this.props.name</div>
}
}
Что я делаю не так?