📅  最后修改于: 2023-12-03 15:04:51.284000             🧑  作者: Mango
ReactJS 常青文件选择器组件是一个 ReactJS 组件,专门用于文件和文件夹的选择和展示。它可以使用简单的 API 将一个或多个文件或文件夹选择器集成到您的 React 应用程序中。
该组件提供了界面友好的文件选择器,使用户可以更轻松地选择他们需要的文件或文件夹,而无需了解有关文件系统的详细信息。
使用 npm 安装组件:
npm install reactjs-evergreen-file-picker
或者使用 Yarn:
yarn add reactjs-evergreen-file-picker
使用以下代码示例快速创建一个文件选择器:
import React from 'react';
import FilePicker from 'reactjs-evergreen-file-picker';
function App() {
const handleSelect = (files) => {
console.log(files);
};
return (
<FilePicker
multiple
onChange={handleSelect}
/>
);
}
export default App;
multiple
: 是否允许多文件选择,默认为 false
。disabled
: 是否禁用选择器,默认为 false
。accept
: 允许选择的文件类型,例如 image/*,application/pdf
。maxSize
: 允许文件的最大大小,以字节为单位。translations
: 自定义本地化字符串,可以使用 en-US
或任何其他语言。style
: 选择器的自定义样式对象。className
: 选择器的自定义类名。allowFolderSelection
: 是否允许选择文件夹,默认为 false
。onSelect
: 选择文件时触发的回调函数,参数为一个文件对象。onSelectFail
: 文件选择失败时触发的回调函数,参数为一个错误信息对象。onLoadFail
: 文件加载失败时触发的回调函数,参数为一个错误信息对象。openDialog()
: 打开文件选择器对话框。import React from 'react';
import FilePicker from 'reactjs-evergreen-file-picker';
function App() {
const handleSelect = (files) => {
console.log(files);
};
const handleLoadFail = (error) => {
console.log(error);
};
const customStyle = {
backgroundColor: 'red',
color: 'white',
padding: '10px',
borderRadius: '4px',
cursor: 'pointer',
};
return (
<FilePicker
multiple
accept="image/*,application/pdf"
maxSize={5000000}
translations={{
browse: '选择文件',
browseFiles: '选择文件',
browseFolders: '选择文件夹',
selected: '已选择文件:',
selectSomeFiles: '选择文件',
selectSomeFolders: '选择文件夹',
dropFiles: '拖动文件到此处',
dropFolders: '拖动文件夹到此处',
cancel: '取消',
error: '出错了',
fileTooLarge: '文件太大',
loadFailed: '加载失败',
folderAlreadySelected: '文件夹已选择',
fileAlreadySelected: '文件已选择',
confirmDelete: '确认删除?',
deleteFile: '删除文件',
deleteFolder: '删除文件夹',
downloadFile: '下载文件',
downloadFolder: '下载文件夹',
renameFile: '重命名文件',
renameFolder: '重命名文件夹',
success: '成功',
}}
style={customStyle}
allowFolderSelection
onSelect={handleSelect}
onLoadFail={handleLoadFail}
/>
);
}
export default App;
如有任何疑问或建议,请提交一个问题并发布一个合并请求,以通过其他开发人员的审查来解决您的问题。感谢您的支持!
MIT @ReactJS Evergreen File Picker