今天要做个h5项目导出word文件功能,发现了两个问题:
1、在html页面添加点击事件的时候,我一开始写方法名是export,一刷新发现页面直接空白了,控制台还没报任务错误。很奇怪,然后利用排除法,把刚才家的代码干掉了,发现页面又能正常渲染了。然后尝试改了个名字比如exportFile就可以了。后来经过查询资料发现export是Javascript未来关键字,不能当做函数名用。
2、后台直接返回的是文件流,前台是直接根据后台返回的数据流blob进行读取,然后将其转化为url,利用a标签跳转完成下载。网上大多数都是这个路子。
对接的时候发现文件可以下载但是里面的内容全是乱码。还不是简单的中文乱码,是整个文档都是乱的。如下图所示:
于是乎排查问题,可能是响应文件类型那里出了问题。于是网上搜资料,最终代码如下。红色圈住的部分是找资料后加上的,解决了word文件打开乱码的问题。
、