Aktualisierung auf die neusten .d.ts-Definitionen für react-addons-test-utils hat die Kompilierung für unseren Testcode durchbrochen. In dieser Funktion:Neue Kompilierungsfehler mit react-addons-test-utils
import * as TestUtils from 'react-addons-test-utils';
import MyReactComponent from 'blabla'
let buildComponent =() => {
const root = TestUtils.renderIntoDocument(<MyReactComponent/>);
return TestUtils.findRenderedComponentWithType(root, MyReactComponent);
}
Passing root
zur letzten Funktion hier verursacht error TS2345: Argument of type 'Component<any, {}> | Element | void' is not assignable to parameter of type 'Component<any, any>'.
Fein, kann ich Stimmen:
let buildComponent =() => {
const root = TestUtils.renderIntoDocument(<MyReactComponent/>);
return TestUtils.findRenderedComponentWithType(root as React.Component<any, any>, MyReactComponent);
}
Aber jetzt MyReactComponent
auf der letzten Linie, die bewirkt, dass error TS2345: Argument of type 'typeof MyReactComponent' is not assignable to parameter of type 'ComponentClass<{}> & (new() => MyReactComponent) & (new() => { props: any; })'.
Anscheinend erwartet es eine ClassType<any, T, C>
wo C extends ComponentClass<{}>
, und so mehow meine passt nicht die Rechnung, aber wie, verstehe ich nicht.