2016-10-13 18:28:39 +02:00
|
|
|
// @jsx: react
|
|
|
|
declare module JSX {
|
|
|
|
interface Element { }
|
|
|
|
interface IntrinsicElements {
|
|
|
|
[s: string]: any;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
declare var React: any;
|
|
|
|
|
|
|
|
interface TodoProp {
|
|
|
|
id: number;
|
|
|
|
todo: string;
|
|
|
|
}
|
|
|
|
interface TodoListProps {
|
|
|
|
todos: TodoProp[];
|
|
|
|
}
|
|
|
|
function Todo(prop: { key: number, todo: string }) {
|
|
|
|
return <div>{prop.key.toString() + prop.todo}</div>;
|
|
|
|
}
|
|
|
|
function TodoList({ todos }: TodoListProps) {
|
|
|
|
return <div>
|
|
|
|
{...<Todo key={todos[0].id} todo={todos[0].todo} />}
|
|
|
|
</div>;
|
|
|
|
}
|
2016-10-13 19:17:01 +02:00
|
|
|
function TodoListNoError({ todos }: TodoListProps) {
|
|
|
|
// any is not checked
|
|
|
|
return <div>
|
|
|
|
{...(<Todo key={todos[0].id} todo={todos[0].todo} /> as any)}
|
|
|
|
</div>;
|
|
|
|
}
|
2016-10-13 18:28:39 +02:00
|
|
|
let x: TodoListProps;
|
|
|
|
<TodoList {...x}/>
|