質問: タイトルの通りなんですが、具体的には、 1. React+Material-ui(v0.15.2)をBrowserifyでimport等を処理し、一つのファイルにしていたが、コンパイルが遅い 2. 開発時はFacebookからDevelopmentのReact(CDN?)を使って、わざわざ毎回コンパイルしないようにしたい 3. TypeScriptで書くことにして、gulp-typescriptで`module: "amd"`を設定して出力 4. RequireJSでReactは読み込めるが、Material-uiは当然ながらコンパイル前だとimportとか使っててAMDでは読めないし、RequireJSはappとかしてしてもapp/index.jsは探してくれない というわけで、コンパイルの時間短縮のために(特にReactのコンパイルを毎回されると非効率的な感じしかしない)開発時はBrowserifyを使わないようにしたいのですが、Material-uiのようなNode.jsでコンパイルすることが前提で(公式のexampleがnpmとwebpackだけだったので勝手な推測ですが)、どうやったら一緒にできるか...と悩んでいるわけです。 一応色々試してみたのですが、 `module: "es2015"`を指定してimportを使って、babelとかのCDNでブラウザ向けにコンバートしてもらおう!→reactがimportできない(ソースも見てみたが、commonjsモジュールなので無理そう。cjs-to-es6も使ってみたが、成功しない) jsxtransformerのCDNを使おう!→importできない。 transform-es2015-modules-amdを使ってAMDに統一しよう!→index.jsを解決できないせいでパスが通らないし、無理やり通すと、今度は相対パスで呼び出しているファイル先が、「.js」がない形にとらえられエラーになる(例:AppBar/index.jsのrequire("./AppBar")が、~.jsではなく~そのものを探そうとする。不思議)し、そもそもBabelのissueなのかどうかわからないけど、「Peroperty right なんちゃら」っていうエラーで止まっていしまう... と言った具合です。 タイトルにはAMDにしたいとありますが、 Material-UIを使えるようにするか、 BrowserifyでReactを毎回コンパイルするのをどうにかするか、 Browserifyの時間のかかるコンパイルをどうにか(早く・軽量に?) できればいいと思っています。 どなたかご助力願います。
回答: browserify-shimを挟むことで、React.js本体はCDN版を使ってコンパイルしない、という手段はどうでしょうか(環境構築例)。