📜  ReactJS UI Ant Design 上传组件

📅  最后修改于: 2022-05-13 01:56:23.768000             🧑  作者: Mango

ReactJS UI Ant Design 上传组件

Ant Design Library 已经预先构建了这个组件,并且它也很容易集成。上传组件用于通过选择或拖动来上传文件。我们可以在 ReactJS 中使用以下方法来使用 Ant Design 上传组件。

上传道具:

  • accept:用来表示可以接受的文件类型。
  • action:用于表示上传的 URL。
  • beforeUpload:上传前会执行的Hook函数。
  • customRequest:用于覆盖默认的 xhr 行为。
  • data:用于上传额外的参数或可以返回上传额外参数的函数。
  • defaultFileList:用于表示已上传文件的默认列表。
  • 目录:用于支持上传整个目录。
  • disabled:用于禁用上传按钮。
  • fileList:用于表示已上传文件的列表。
  • headers:用于设置请求头。
  • iconRender:用于自定义显示图标。
  • isImageUrl:用于自定义是否在缩略图中渲染
  • itemRender:用于uploadList的自定义item。
  • listType:内置样式表,支持文本、图片或图片卡片类型。
  • maxCount:用于限制上传文件的数量。
  • method:上传请求的HTTP方法。
  • multiple:用于表示是否支持选中的多个文件。
  • name:用于表示上传文件的名称。
  • openFileDialogOnClick:用于在单击文件时打开文件对话框。
  • previewFile:用于自定义预览文件逻辑。
  • progress:用于自定义进度条。
  • showUploadList:用于指示是否显示默认上传列表。
  • withCredentials:它是带有 cookie 的 Ajax 上传。
  • onChange:上传状态发生变化时触发的回调函数。
  • onDrop:是文件拖放到上传区域时触发的回调函数。
  • onDownload:点击下载文件的方法。
  • onPreview:当点击文件链接或预览图标时触发的回调函数。
  • onRemove:是一个回调函数,当点击删除文件按钮时触发。

上传文件道具:

  • name:用于表示文件名。
  • percent:用于表示上传进度百分比。
  • status:用于表示上传状态。
  • thumbUrl:用于传递缩略图 URL。
  • uid:唯一标识,不提供时自动生成。
  • url :用于表示下载地址。

创建 React 应用程序并安装模块:

  • 第 1 步:使用以下命令创建一个 React 应用程序:

    npx create-react-app foldername
  • 第 2 步:创建项目文件夹(即文件夹名称)后使用以下命令移动到该文件夹:

    cd foldername
  • 第 3 步:创建 ReactJS 应用程序后,安装 必需的 模块使用以下命令:

    npm install antd

项目结构:它将如下所示。

项目结构

示例:现在在App.js文件中写下以下代码。在这里,App 是我们编写代码的默认组件。

App.js
import React from 'react'
import "antd/dist/antd.css";
import { Upload, message, Button } from 'antd';
  
const props = {
  headers: {
    authorization: 'authorization-text',
  },
  action: 'https://www.mocky.io/v2/5cc8019d300000980a055e76',
  name: 'file',
};
  
export default function App() {
  
  return (
    
      

ReactJS Ant-Design Upload Component

      <>          {             if (response.file.status !== 'uploading') {               console.log(response.file, response.fileList);             }             if (response.file.status === 'done') {               message.success(`${response.file.name}                                 file uploaded successfully`);             } else if (response.file.status === 'error') {               message.error(`${response.file.name}                               file upload failed.`);             }           }}         >                                
  ); }


运行应用程序的步骤:从项目的根目录使用以下命令运行应用程序:

npm start

输出:现在打开浏览器并转到http://localhost:3000/ ,您将看到以下输出:

参考: https://ant.design/components/upload/