React.js ライブラリ「use-file-upload」を使ってファイルをアップロードする
ライブラリ「use-file-upload」をインストールすると、ファイルをアップロードすることが可能です。ここでは、react.jsでuse-file-uploadを利用するための手順と簡単な使い方を記述してます。
環境
- OS CentOS Linux release 8.0.1905 (Core)
- node V12.16.3
- npm 6.14.7
- React 16.13.0
react.js環境構築
下記のコマンドで構築してます。ここでは、react-appという名前でプロジェクトを作成してます。
create-react-app react-app
use-file-uploadインストール
作成したプロジェクトに移動して、インストールします。
## 作成したプロジェクトに移動
cd react-app
## インストール
npm install use-file-upload
use-file-upload使い方
srcディレクトリにsample.jsと名前で下記のコードを記述します。
import React from 'react'
import { useFileUpload } from "use-file-upload";
const Sample = () => {
const defaultSrc =
"https://www.pngkit.com/png/full/301-3012694_account-user-profile-avatar-comments-fa-user-circle.png";
const [files, selectFiles] = useFileUpload();
return (
<div>
<img src={files?.source || defaultSrc} alt="preview" />
<div>
<button
onClick={() =>
selectFiles({ accept: "image/*" }, ({ name, size, source, file }) => {
console.log("Files Selected", { name, size, source, file });
})
}
>
画像をアップ
</button>
</div>
</div>
);
}
export default Sample;
次に、srcディレクトリ配下にあるApp.jsを下記のように編集します。
import React from 'react';
import Sample from './sample';
import './App.css';
function App() {
const style = {
width: "50%",
margin: "0 auto",
marginTop: 150,
};
return (
<div className="App">
<div style={style}>
<Sample />
</div>
</div>
);
}
export default App;
App.cssにも、以下を追加します。
img {
width: 100px;
padding: 1em;
}
実行します。
npm start
ブラウザから http://プライベートIP:3000にアクセスすると、ファイルがアップロードできることが確認できます。
-
前の記事
javascript ブロックスコープの使い方 2020.10.03
-
次の記事
javascript 変数に値が同じであれば一括で代入する 2020.10.03
コメントを書く