Невозможно определить прототипы наблюдателя с помощью mobx-реагировать-lite.
Я пытался использовать обобщенные значения для функции наблюдателя, но она выдает ошибку.
Делать что-то подобное хорошо:
import { observer } from 'mobx-react-lite';
type PassedProps = {
foo: string,
num: number
}
const Element = (props: PassedProps) => null;
observer<PassedProps>(Element)
Но в более сложном примере:
import { observer } from 'mobx-react-lite';
import { StoreContext } from 'index';
export function connect<MappedProps, PassedProps> (
mapStoreToProps: (store: any, ownProps:PassedProps) => MappedProps,
UIComponent: React.FunctionComponent<MappedProps & PassedProps>
) {
const WrappedComponent = (props: PassedProps) => {
const store = React.useContext(StoreContext);
const mapped = mapStoreToProps(store, props);
return UIComponent({...mapped, ...props});
}
return observer<PassedProps>(WrappedComponent);
}
Это ошибки:
Type 'PassedProps' does not satisfy the constraint 'object'