- ファイルのアップロードとプレビュー: Dropzoneは、ファイルのアップロードとプレビューを簡単に実装するための便利なライブラリです。まず、Dropzoneコンポーネントをインストールし、次のように使います:
import React, { useState } from 'react';
import Dropzone from 'react-dropzone';
const PhotoUploader = () => {
const [selectedFile, setSelectedFile] = useState(null);
const handleDrop = (acceptedFiles) => {
setSelectedFile(acceptedFiles[0]);
};
return (
<div>
<Dropzone onDrop={handleDrop}>
{({ getRootProps, getInputProps }) => (
<div className="dropzone" {...getRootProps()}>
<input {...getInputProps()} />
<p>写真をドロップするか、ここをクリックして選択してください。</p>
</div>
)}
</Dropzone>
{selectedFile && (
<div>
<h4>選択された写真:</h4>
<img src={URL.createObjectURL(selectedFile)} alt="選択された写真" />
</div>
)}
</div>
);
};
export default PhotoUploader;
この例では、Dropzoneコンポーネントを使用して写真をアップロードするためのUIを作成しています。handleDrop
関数は、選択されたファイルを状態として保持します。選択されたファイルはプレビューとして表示されます。
- 追加のカスタマイズ: Dropzoneはさまざまなカスタマイズオプションを提供しています。たとえば、アクティブなドロップゾーンのスタイル、受け入れ可能なファイルタイプの制限、最大ファイルサイズの設定などができます。公式のドキュメントを参照して、必要に応じてカスタマイズしてください。
これらのコード例を使用することで、ReactでDropzoneを使用して写真を表示する方法を学ぶことができます。必要に応じて、自分のプロジェクトに適した方法でカスタマイズしてください。