当你异步请求完成window.open 跳转一个页面被火狐拦截,你是不是也有骂娘过(我骂过好多次,嘿嘿嘿)。遇到这个我问题我首先想到的是,js模拟a标签点击时间去解决这个问题。
模拟代码:
let link = document.createElement('a');
link.href = 'xxx';
link.target = '_blank';
link.click();
在测试的时候发现在火狐上还是会被拦截,这个天杀的火狐。。。
在咨询了大佬(🙏大佬,跪谢大佬)的情况下给了一个解决方法
根据大佬的建议的代码:
let newWin = window.open('')
this.props.dispatch({
type: `xxx`,
payload: {
type: type
},
}).then((result) => {
newWin.location.href = result.url;
})
成功解决问题。。。再次🙏大佬。。。
结束!完毕,回家吃饭。。。