Reactは通常Next.jsを使ってその中で使うのが一般的で簡単ですが、実験的にReactを試したりするには専用のCNDが用意されています。
CDN版はローカルに何もインストールすることなく、お手軽にReactを使えるのでちょっとした確認に最適です。
この記事ではCND版ReactにMaterial-UI(MUI)を組み込んでボタンなどの表示をさせてみます。
CDN版Reactの準備
CDN版のReactを利用するには2つのスクリプトをCDNから読み込む必要があります。
<script src="https://unpkg.com/react@latest/umd/react.development.js" crossorigin="anonymous"></script> <script src="https://unpkg.com/react-dom@latest/umd/react-dom.development.js"></script>
CDNとは
CDNはContent Delivery Networkの略で、「コンテンツ配信ネットワーク」の意味。インターネット上にキャッシュサーバーを分散配置し、エンドユーザーに最も近い経路にあるキャッシュサーバーから画像や動画などのWebコンテンツを配信する仕組みのこと
次にMaterial-UI(MUI)とスクリプト解析用にbabelを読み込みます。
<script src="https://unpkg.com/@mui/material@latest/umd/material-ui.development.js" crossorigin="anonymous"></script> <script src="https://unpkg.com/babel-standalone@latest/babel.min.js" crossorigin="anonymous"></script>
Material-UI(MUI)コンポーネントの宣言
CDN版ReactでMaterial-UI(MUI)コンポーネントを利用する場合はそのコンポーネントをimportの代わりに宣言する必要があります。
const { Button //Material-UI(MUI)のButtonコンポーネント ,Divider //Material-UI(MUI)のDividerコンポーネント ,CircularProgress //Material-UI(MUI)のCircularProgressコンポーネント } = MaterialUI;
今回は実験でButtonコンポーネント、Dividerコンポーネント、CircularProgressコンポーネントを表示させてみます。
CDN版ReactでMaterial-UI(MUI)を使う
準備が完了したので、実際にButtonコンポーネント、Dividerコンポーネント、CircularProgressコンポーネントを表示させてみます。
基本はNext.jsで行うのと同じですが、前項で説明したように利用するMaterial-UI(MUI)コンポーネントを宣言する部分を追加しておきます。
<html> <head> <meta http-equiv="content-type" charset="utf-8"> <script src="https://unpkg.com/react@latest/umd/react.development.js" crossorigin="anonymous"></script> <script src="https://unpkg.com/react-dom@latest/umd/react-dom.development.js"></script> <script src="https://unpkg.com/@mui/material@latest/umd/material-ui.development.js" crossorigin="anonymous"></script> <script src="https://unpkg.com/babel-standalone@latest/babel.min.js" crossorigin="anonymous"></script> <script type="text/babel"> class App extends React.Component{ render(){ const { Button //Material-UI(MUI)のButtonコンポーネント ,Divider //Material-UI(MUI)のDividerコンポーネント ,CircularProgress //Material-UI(MUI)のCircularProgressコンポーネント } = MaterialUI; return( <div> <div>これはCDNを使ったReact & Materil-uiです。</div> <Button variant="contained" color="primary">Hello World</Button> <Divider /> <CircularProgress /> </div> ) } } ReactDOM.render(<App />,document.getElementById('root')); </script> </head> <body> <div id="root">root</div> </body> </html>
これで無事CND版のReactでMaterial-UI(MUI)を使ったコンポーネントを作成して表示することができるようになりました。
まとめ
CND版のReactでMaterial-UI(MUI)を使ったコンポーネントを作成するには専用のスクリプトをCDNから読み込めば利用するMaterial-UI(MUI)コンポーネントを宣言するだけで、簡単に表示することが可能になります。