「【React】最低限の構成で動かしてみる」にTypeScriptを追加してみました。
今回はLinux環境です。
動作環境
OS | Parott OS |
バージョン | 5.3 Electro Ara |
仮想化ソフト | Oracle VM VirtualBox |
環境構築
Linux環境のため、node.js、npm、nvmをaptコマンドを使用してインストールしました。
node.jsをインストール
sudo apt install nodejs
npmをインストール
sudo apt install npm
node.jsのversion管理を行うためnvmをインストール
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
node.jsのversionを調べる。
nvm ls-remote
version指定してインストール
nvm install v20.11.0
「nvm:コマンドが見つかりません」のエラーが出た場合は以下の手順を行うとコマンドが使用できるようになります。
command -v nvm
Linuxのディストリビューションによって3パターンのコマンドがあります。今回使用したLinuxのディストリビューションはDebian系なのでkshでした。
bash
source ~/.bashrc
zsh
source ~/.zshrc
ksh
. ~/.profile
実行環境
TypeScriptを動作させるため、ライブラリを追加していきます。
構成について
index.tsxとtsconfig.jsonを追加しています。
tsconfig.jsonはTypeScriptの設定ファイルです。
C:\REPOS\STOCK_FRONT
├── package-lock.json
├── package.json
├── public
│ └── index.html
├── src
│ └── index.tsx
└── tsconfig.json
TypeScriptに必要なパッケージをインストールする。
npm install @types/react @types/react-dom typescript
tsconfig.jsonを作成する。
npx tsc --init
追加した箇所は3点。
terget:どのバージョンのJavaScriptに変換するのか指定する。
jsx:どのreactのversionに変換するかを指定する。preserveは変換なし。
include:コンパイル対象のディレクトリを指定する。
- target: “es5”
- jsx:”preserve”
- include :”src”
要件によって変わる部分なのでドキュメントを見ながら、変更・追加していく。
tsconfig.ts
{
"compilerOptions": {
"target": "es5",
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true,
"strict": true,
"skipLibCheck": true,
"jsx": "react-jsx"
},
"include":[
"src"
]
}
Buttonに型を追加してみました。型を指定することで不具合防止に繋がります。
index.tsx
import React from 'react';
import ReactDOM from 'react-dom';
const Button = ({title}: {title: string}) => {
return (<button>{title}</button>);
}
ReactDOM.render(
<React.StrictMode>
<div><Button title="Hello World"/></div>
</React.StrictMode>,
document.getElementById('root')
);
起動
npm start
無事表示されました!
npm startで起動したが上手くレンダリングされずに真っ白状態になった場合はもしかしらたpackeage.jsonに不要なパス指定が設定されているかも?
不用な設定を削除したら表示されました。
"homepage":"https://github.com/xxxxxxxxxxxx"
今回学んだこと
TypeScriptに必要なパッケージ @types/react @types/react-dom typescript
パッケージ管理について npm nvm package.json package-lock.json node_modules
TypeScriptの管理 tsconfig.json
React+TypeScriptを最低限の構成で動かす方法
おすすめの書籍
JavaScriptのおすすめの書籍です。
おすすめのUdemy講座
ReactでおすすめのUdemy講座を紹介します。
モダンJavaScriptの基礎から始める挫折しないためのReact入門
ReactはJavaScriptの基本的な構文を使用するため、Reactだけの理解では足りないでしょう。
こちらのReact講座は、JavaScriptでのTODOアプリを作成してからReactでのTODOアプリを作成するため、ReactだけではなくJavaScriptを基礎から学ぶことができます。
Reactからいきなり入らずにJavaScriptの基礎から学べる点が、初心者にとてもおすすめできる内容となっています。
【Reactアプリ開発】3種類のReactアプリケーションを構築して、Reactの理解をさらに深めるステップアップ講座
APIを使用してデータを取得したり、react-router-domでのページ遷移を学べるためより実践的な内容となっています。
3種類のReactアプリケーションを作成することができるため、Reactの基礎的な内容を学んだ人におすすめです。
基本的に構文が載っているため、教科書代わりに使える内容となっています。
Reactの前にとてもお世話になりました。JavaScriptをこれから始める方におすすめです。