ant-design/components/upload/demo/upload-custom-action-icon.md
Clair Duan a875bfd28c
feat: custom Upload action icons removeIcon and downloadIcon (#21363)
* feat: add removeIcon and uploadIcon in API showUploadList

* test: test for removeIcon and downloadIcon

* docs: Upload docs and demo of downloadIcon and removeIcon

* test: update snapshot of uploadlist

* test: update Upload demo test snapshots

* fix: remove className of Upload custom action icons

* test: upldate Upload snapshot

* test: add trailing comma in upload-custom-action-icon.md

* fix: render Upload custom action icons with React.cloneElement

* test: update Uploadlist tests

* test: use string in Upload custom icon test

* fix: remove unused-var SmileOutlined in Upload demo

* fix: fix mouseEvent param missing in Upload ActionIconRender

* fix: fix mouseEvent type in Upload ActionIconRender

* fix: test mouseEvent in upload-custom-action-icon demo

* fix: fix the missing props spread in Upload custom icon

* test: add test for custom onClick in custom Upload icon

* fix: add remove test for custom Upload icon
2020-02-17 14:55:16 +08:00

65 lines
1.3 KiB
Markdown

---
order: 12
title:
zh-CN: 自定义交互图标
en-US: custom action icon
---
## zh-CN
使用 `showUploadList` 设置列表交互图标。
## en-US
Use `showUploadList` for custom action icons of files.
```jsx
import { Upload, Button } from 'antd';
import { UploadOutlined, StarOutlined } from '@ant-design/icons';
const props = {
action: 'https://www.mocky.io/v2/5cc8019d300000980a055e76',
onChange({ file, fileList }) {
if (file.status !== 'uploading') {
console.log(file, fileList);
}
},
defaultFileList: [
{
uid: '1',
name: 'xxx.png',
status: 'done',
response: 'Server Error 500', // custom error message to show
url: 'http://www.baidu.com/xxx.png',
},
{
uid: '2',
name: 'yyy.png',
status: 'done',
url: 'http://www.baidu.com/yyy.png',
},
{
uid: '3',
name: 'zzz.png',
status: 'error',
response: 'Server Error 500', // custom error message to show
url: 'http://www.baidu.com/zzz.png',
},
],
showUploadList: {
showDownloadIcon: true,
downloadIcon: 'download ',
showRemoveIcon: true,
removeIcon: <StarOutlined onClick={e => console.log(e, 'custom removeIcon event')} />,
},
};
ReactDOM.render(
<Upload {...props}>
<Button>
<UploadOutlined /> Upload
</Button>
</Upload>,
mountNode,
);
```