2016-05-24 11 views
2

私はreduxアプリケーションを書くためにtypescriptを使用しています。Typescriptが不満React.createClassを使用しているときにプロパティが 'JSX.IntrinsicElements'型に存在しませんか?

var item = React.createClass({ 
    render: function() { 
    return (<div>hello world</div>) 
    } 
}); 

export default class ItemList extends Component<any, any> { 
    render() { 
     return (<item />) 
    } 
} 

はその後typescriptですが、これを文句:

Property 'item' does not exist on type 'JSX.IntrinsicElements'. 
+1

はパスカルケースでこの使用してみてください。大文字と小文字を区別する –

+0

@ RM-123いいえ、それは 'item'でもかまいません。小文字の 'item'は有効なHTML要素名です。カスタム要素は、すべて本来の要素と同様に、小文字の要素にすることができます。 – trusktr

答えて

4
var Item = React.createClass({ 
    render: function() { 
    return (<div>hello world</div>) 
    } 
}); 

export default class ItemList extends Component<any, any> { 
    render() { 
     return (<Item />) 
    } 
} 
+7

未来の顔を見ている人には分かりやすいように、このトリックは「Item」の大文字「I」です。私たちはここで、すべて同じラクダの判断をして、ラクダにしようとしています。あなたがこれを読んでいるならば、あなたはその大文字も見逃すほど睡眠が取れない可能性があります。 –

関連する問題