react單頁面開發向新窗口傳數據


前言:‘_blank’打開新窗口頁面,state算內存傳值,用<Link to={{pathname: url, state: data}}></Link>或者this.props.match.history.push(urlName, state)都失效

解決辦法:

1:window.postMessage()

a.html

const newWindow = window.open(`b.html`, '_blank')
newWindow.onload = () => newWindow.postMessage(data, window.origin)

b.html:

  componentDidMount() {
    window.addEventListener('message', (event) => {
      console.log('我收到數據了!', event, event.data)
    }, false)
  }i

待更新。。。。。

注: 刷新頁面都失效,如果數據太多看來只能在url帶上id請求后台數據或者storage


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM