2016-11-08 18:32:26 +01:00
|
|
|
// @filename: file.tsx
|
|
|
|
// @jsx: preserve
|
|
|
|
// @noLib: true
|
2017-10-04 23:43:35 +02:00
|
|
|
// @skipLibCheck: true
|
2016-11-08 18:32:26 +01:00
|
|
|
// @libFiles: react.d.ts,lib.d.ts
|
|
|
|
|
|
|
|
import React = require('react');
|
|
|
|
|
|
|
|
interface PoisonedProp {
|
|
|
|
x: string;
|
|
|
|
y: "2";
|
|
|
|
}
|
|
|
|
|
|
|
|
class Poisoned extends React.Component<PoisonedProp, {}> {
|
|
|
|
render() {
|
|
|
|
return <div>Hello</div>;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
const obj = {};
|
|
|
|
|
2018-10-17 02:16:00 +02:00
|
|
|
// OK
|
|
|
|
<Poisoned {...{x: "ok", y: "2"}} />;
|
|
|
|
|
2016-11-08 18:32:26 +01:00
|
|
|
// Error
|
|
|
|
let p = <Poisoned {...obj} />;
|
|
|
|
let y = <Poisoned />;
|
2017-05-05 02:12:52 +02:00
|
|
|
let z = <Poisoned x y/>;
|
|
|
|
let w = <Poisoned {...{x: 5, y: "2"}}/>;
|
|
|
|
let w1 = <Poisoned {...{x: 5, y: "2"}} X="hi" />;
|