2014-10-31 14 views
6

JSX Transformer powoduje błędy

Kiedy przekonwertować moje reagują plików przy użyciu konwertera z reagują-toolsJSX Converter przy użyciu React.createElement ("H1", null) zamiast React.DOM.h1 (null)

 $ jsx public/dev/jsx public/prod/js --no-cache-dir 

Albo kiedy przekonwertować z grunt reagują

 $ grunt react 

Moje przerwy plików produkcja ponieważ CO nversion używa React.createElement, a błąd mówi, że ta funkcja jest niezdefiniowana.

 <h1>{this.state.title}</h1> 

konwertuje do:

 React.createElement("div", null, 
     React.createElement("h1", null, this.state.title) 

zamiast:

 React.DOM.h1(null, this.state.title) 

Konwerter żywo działa dobrze, ponieważ używa React.DOM.h1(null, this.state.title). Ta linia kodu działa dobrze z reakcją, ale funkcja React.createElement() nie działa i nie zostanie znaleziona.

Jak mogę wymusić mój automatyczny konwerter, JSX lub grunt, aby przekonwertować na React.DOM.h1(null) zamiast React.createElement(h1, null). Dlaczego konwerter korzysta z tej funkcji?

Odpowiedz

4

Miałem ten sam błąd z lib kawy z funkcją przekształcania kawy. Te biblioteki są aktualizowane w przypadku React 0.12. Jeśli nadal korzystasz z Reagowania 0.11, prawdopodobnie będziesz musiał wycofać się w reakcji na nieco starszą wersję lub wpadnij na React 0.12.

+0

Spędziłem 3 dni, aby to zrozumieć. Dziękuję Ci! – ArieDov

+0

Dzięki! Jeśli korzystasz z przeglądarki internetowej, upewnij się, że podważyłeś wersję (0,17 dla mnie) – kunigami

0

Tak, właściwie zaktualizowałem React 0.12 i zaczęło działać ... Dzięki.