React 可以在线预览word,pdf,docx格式的文件

React 可以在线预览word,pdf,docx格式的文件,下面往下看

我也不知道为什么要做这个功能,查了百度很久才找到了一个组件、react-file-viewer 下面上代码

1、首先使用npm/yarn/cnpm下载这个包

npm install react-file-viewer

2、在组件中引入这个包

//引入这个组件
import FileViewer from 'react-file-viewer';

3、 使用这个组件

render() {
        let { top, file } = this.state;
        let { play, sonstate } = this.props
        var index = file.lastIndexOf(".");
        var type = file.substr(index + 1);
        return (
            <div>
                <div className="top" style={{ display: play ? 'flex' : 'none' }}>
                    <div className="all" >
                        <div className="allname">
                            <div className="topall"><Button style={{ opacity: '0' }}>关闭</Button><div></div><Button onClick={() => {
                                sonstate(false)
                                this.setState({ top: false, file: '' })
                            }}>关闭</Button>
                            </div>
                            {/* 使用这个组件 */}
                            <FileViewer fileType={type}
                                filePath={file}
                                onError={this.onError}
                                errorComponent={Error}
                                unsupportedComponent={Error}
                            />
                        </div>
                    </div>
                </div>
            </div>
        )
    }

3、注意这个组件的使用规则

请注意,此模块最适用于16+反应。如果您使用React <16,则可能需要使用0.5版本。npm install react-file-viewer@0.5.0。

有一个主要的React组件FileViewer,它采用以下道具:

fileTypestring:要显示的资源类型(例如,支持的文件格式之一’png’)。传入不受支持的文件类型将导致显示unsupported file type消息(或自定义组件)。

filePath string:FileViewer显示的资源的url。

onErrorfunction [可选]:在文件查看器获取或呈现所请求资源时出现错误时将调用的函数。您可以在此处传递日志记录实用程序的回调。

errorComponent react元素[可选]:在出现错误时呈现的组件,而不是与react-file-viewer一起打包的默认错误组件。

unsupportedComponent react元素[可选]:在不支持文件格式的情况下呈现的组件。

4.注意这个组件的所支持的格式

  • 图像:png,jpeg,gif,bmp,包括360度图像
  • PDF格式
  • CSV
  • XSLX
  • DOCX
  • 视频:mp4,webm
  • 音频:mp3

ps:当然大家也可以看这个链接https://www.npmjs.com/package/react-file-viewer

  • 5
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
React中使用react-pdf插件来实现弹窗预览PDF的功能是可行的。根据你提供的引用内容,你已经选择了react-pdf插件来实现这个需求。为了解决react-pdf插件的一些问题,你可以在引入react-pdf的下一行代码中添加以下代码来解决问题:pdfjs.GlobalWorkerOptions.workerSrc = `//cdnjs.cloudflare.com/ajax/libs/pdf.js/${pdfjs.version}/pdf.worker.js`。这段代码可以确保react-pdf插件正常工作。此外,你还提到了react-file-viewer插件可以用来预览docx和xlsx格式文件。所以,你可以使用react-pdf插件来预览PDF文件,而使用react-file-viewer插件来预览docx和xlsx文件。这样可以满足你的需求。 #### 引用[.reference_title] - *1* *2* [react中使用react-pdf弹窗预览pdf](https://blog.csdn.net/michen1127/article/details/131416422)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [React文件预览,React实现在线预览docx,xslx,pdf格式文件](https://blog.csdn.net/a82048195/article/details/107681577)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值