mobile-more
Version:
基于 antd-mobile v5 扩展移动端 UI 组件
38 lines (37 loc) • 1.55 kB
TypeScript
import React, { ReactNode } from 'react';
import { ImageViewerProps } from 'antd-mobile';
import { FileType, getFileThumbUrl, supports, transformUploadFile, UploadFileType } from './utils';
import './index.less';
export interface BizFileViewerProps extends Omit<ImageViewerProps, 'image'> {
/**
* @description 要预览的文件。
*/
file?: FileType;
/**
* @description 自定义渲染视图。注意 imageRender 优先级比 renderView 高。
* @param dom 如果文件是 `pdf` `audio` `video` 类型,返回生成的预览 `DOM`,否则返回 `undefined`。
* @param file 文件对象信息 `UploadFileType`。
* @returns 如果返回 `undefined` `null` 或 `false`,表示不支持预览。
*/
renderView?: (dom: ReactNode, file: UploadFileType) => ReactNode;
/**
* @description 不支持预览时的提示文本。
* @default '该文件不支持预览,你可以尝试下载后查看'
*/
unsupportedTipText?: ReactNode | ((file: UploadFileType) => ReactNode);
/**
* @description pdf 预览 iframe 是否显示工具条。如果为 `false`,在 url 后面拼接 `#toolbar=0` 字符串。
* @default false
*/
iframeToolbar?: boolean;
/**
* @description 自定义关闭图标。
*/
closeIcon?: ReactNode;
}
declare const BizFileViewer: React.FC<BizFileViewerProps> & {
getFileThumbUrl: typeof getFileThumbUrl;
transformUploadFile: typeof transformUploadFile;
supports: typeof supports;
};
export default BizFileViewer;