2016-04-13 27 views
7

Ho iniziato a esaminare ReactJS. Sembra che Facebook abbia appena rilasciato la versione 15.0.1. Ho esaminato questo framework l'anno scorso, durante la versione 0.12.x, quando utilizzava JSXTransformer, e ora sembra che se ne sia andato.React without Webpack

Ora sembra che quasi tutti i tutorial suggeriscano l'utilizzo dell'ultimo React con Webpack. C'è un modo per non utilizzare affatto il webpack? Sto cercando di trovare un buon esempio valido con un task grunt per React 15.x.x.

Qualsiasi aiuto sarebbe apprezzato.

+1

Non è necessario il Webpack. Non hai nemmeno bisogno di JSX, puoi semplicemente scrivere "React.createElement" se vuoi. Se vuoi JSX hai bisogno di Babel, che funzionerà bene con il grugnito. Questo è tutto ciò di cui hai bisogno. – azium

+1

Hai a esso hoss: http://jamesknelson.com/learn-raw-react-no-jsx-flux-es6-webpack/ – lux

+0

@azium: È pazzesco. Codificare un'app in questo modo è 100 volte più fatica di quanto non si impieghi mezz'ora per configurare Webpack o 1 minuto con un generatore. – nbrogi

risposta

3

trasformatore JSX è deprecato sembra.

Se non si desidera utilizzare il webpack, è necessario riflettere su quali funzionalità è possibile vivere senza.

Con l'avanzamento del supporto dei browser per le funzionalità ES6, ora è possibile utilizzare la sintassi ES6 e utilizzare anche i moduli (quando si attivano i flag sperimentali) senza utilizzare Webpack.

Se si desidera utilizzare JSX, sarà sempre necessario trasporlo in JS perché non esiste alcun supporto nativo nei browser all'orizzonte. Il modo più semplice per farlo è aggiungere un middleware Babel con il preset "React" al tuo server di sviluppo.

La gestione delle dipendenze è anche andare a essere complicato, perché NPM offre pacchetti in CommonJS, che non può essere eseguito come è nel browser ...

Se si vuole sperimentare con questo, è possibile controllare un kit di avvio sperimentale React che ho messo su GitHub React Without Webpack che tenta di replicare la maggior parte delle funzionalità del webpack utilizzando le caratteristiche del browser nativo e http2.