Pull to refresh

Comments 5

От использования такой связки меня отделяла только плохая поддержка IDE. Но к счастью VS Code 0.8, Atom и Sublime с plug-in уже умеют подсветку и автокомплит. Жду не дождусь когда поддержка TSX появится в моем любимом WebStorm и будет счастье.
Эта строчка кода не компилируется:

React.render(React.createElement(Main), document.getElementById('main'));


Свойства 'render' нет в React.
Частично разобрался с проблемой: у автора версия React 0.13.3, а у меня 0.14. У них разные API в typings. В новой версии отсутствует вот этот фрагмент:

function render<P>(
        element: DOMElement<P>,
        container: Element,
        callback?: () => any): DOMComponent<P>;
    function render<P, S>(
        element: ClassicElement<P>,
        container: Element,
        callback?: () => any): ClassicComponent<P, S>;
    function render<P, S>(
        element: ReactElement<P>,
        container: Element,
        callback?: () => any): Component<P, S>;


Осталось разобраться, что с этим всем делать дальше…
Разобрался с проблемой: в версии 014 часть API модуля React вынесена в модуль ReactDOM. Поэтому ещё нужно добавить в проект поддержку ReactDOM, и всё заработает.

1. Установить пакет react-dom:

npm install react-dom --save


2. Установить декларацию для react-dom:

tsd install react-dom --save


3. Добавить ссылку на декларацию react-dom в исходные тексты:

/// <reference path="../typings/react/react-dom.d.ts" />


4. Импортировать модуль react-dom:

import * as ReactDOM from 'react-dom';
Sign up to leave a comment.

Articles