react中实现从服务器下载文件
百度找了个大牛写的便用在项目上,用谷歌,IE测试可以正常下载文件,用360浏览器会出现问题,页面切换会神奇的进入点击事件downloadDetailData这个方法回调里面,也就是会再次触发下载文件,其它浏览器不会,就360浏览器会出现这个问题,求解决,或者大家有在项目中使用过别的方法的话可以分享下么
//内容来源 https://blog.csdn.net/jiangkai528/article/details/78852777downloadDetailData=()=>{ var divElement= document.getElementById("downloadDiv"); var downloadUrl=`${apiBasePath}/api/xxxxx/downloadDetailData`; var params=JSON.stringify({ key:'value' }) ReactDOM.render( <form action={downloadUrl} method="post"> <input name="params" type="text" value={params}/> </form>, divElement ) ReactDOM.findDOMNode(divElement).querySelector('form').submit(); ReactDOM.unmountComponentAtNode(divElement); } render() { <div> <div id='downloadDiv' style={{display:'none'}}> </div> <Button type="primary" onClick={this.downloadDetailData}>导出</Button> </div>}