如何在 React 中實現映像拖放
如何僅使用 CSS 在 React 中實現圖像拖放
React 在建立互動式 UI 方面得到了廣泛認可。在本教程中,我們將指導您僅使用 CSS 在 React 中建立圖像拖放功能。
第 1 步:設定你的 React 項目
先設定您的 React 項目。您可以使用 create-react-app 進行簡單設定。
npx create-react-app drag-and-drop
第2步:更新App.js和App.css
接下來,修改 App.js 檔案以建立圖片和標題的容器。
import './App.css'; function App() { return ( <div className="App"> <h2 className="heading">Select Image:</h2> <div className="image-area"></div> </div> ); } export default App;
在 App.css 中,設定頁面樣式:
.App { text-align: center; width: 100vw; height: 100vh; } .heading { font-size: 32px; font-weight: 500; }
第三步:建立ImageContainer元件
建立一個新檔案 ImageContainer.js 並定義一個基本的拖放容器。
import React from 'react'; const ImageContainer = () => { return ( <div className="image-container"></div> ); }; export default ImageContainer;
在 ImageContainer.css 中設定此容器的樣式:
.image-container { width: 60%; height: 90%; display: flex; align-items: center; justify-content: center; border: 2px dashed rgba(0, 0, 0, .3); }
第四步:新增圖片上傳功能
透過檔案輸入和使用者文字說明增強 ImageContainer。
import React from 'react'; import './ImageContainer.css'; const ImageContainer = () => { const [url, setUrl] = React.useState(''); const onChange = (e) => { const files = e.target.files; if (files.length > 0) { setUrl(URL.createObjectURL(files[0])); } }; return ( <div className="image-container"> <div className="upload-container"> <input type="file" className="input-file" accept=".png, .jpg, .jpeg" onChange={onChange} /> <p>Drag & Drop here</p> <p>or</p> <p>Click</p> </div> </div> ); }; export default ImageContainer;
並設定上傳容器的樣式:
.image-container { width: 60%; height: 90%; display: flex; align-items: center; justify-content: center; border: 2px dashed rgba(0, 0, 0, .3); } .upload-container { position: relative; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; background-color: white; } .upload-container > p { font-size: 18px; margin: 4px; font-weight: 500; } .input-file { display: block; border: none; position: absolute; top: 0; left: 0; right: 0; bottom: 0; opacity: 0; }
第 5 步:預覽影像
修改元件,有條件地渲染上傳的圖片或拖放區域。
import React from 'react'; import './ImageContainer.css'; const ImageContainer = () => { const [url, setUrl] = React.useState(''); const onChange = (e) => { const files = e.target.files; if (files.length > 0) { setUrl(URL.createObjectURL(files[0])); } }; return ( <div className="image-container"> {url ? ( <img className="image-view"> <h3> Step 6: Import and Run the Application </h3> <p>Finally, import ImageContainer into App.js and run the app.<br> </p> <pre class="brush:php;toolbar:false">import './App.css'; import ImageContainer from './ImageContainer'; function App() { return ( <div className="App"> <h2 className="heading">Select Image:</h2> <div className="image-area"> <ImageContainer /> </div> </div> ); } export default App;
現在您可以運行應用程式並享受使用 React 和 CSS 編寫圖像拖放功能的樂趣。
本教學介紹如何使用 React 設定基本的圖像拖放區域、利用檔案輸入和 CSS 進行樣式設定以及處理圖像預覽。
以上是如何在 React 中實現映像拖放的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

在本週的平台新聞綜述中,Chrome引入了一個用於加載的新屬性,Web開發人員的可訪問性規範以及BBC Move

該文檔負責人可能不是網站上最迷人的部分,但是其中所處的內容對於您的網站的成功也一樣重要

有很多分析平台可幫助您跟踪網站上的訪問者和使用數據。也許最著名的是Google Analytics(廣泛使用)
