INCORRECT VERSION

  const openExternalPage = (title, url) => {

    let mytitle = encodeURIComponent(title)

    let myurl = encodeURIComponent(url)

    selectMenu({ keyp: false })

 

è throws warning
Warning: Cannot update a component (`Header`) while rendering a different component (`Layout`). To locate the bad setState() call inside `Layout

 

    const openNewTab = () => {

      window.open(`${externalurl}iframe/${mytitle}/${myurl}`, '_blank')

    }

    return openNewTab()

  }

 

  if (!!keyp) {

    openExternalPage(content, url)

  }

 

CORRECT VERSION

const openExternalPage = (title, url) => {

    let mytitle = encodeURIComponent(title)

    let myurl = encodeURIComponent(url)

    // selectMenu({ keyp: false })

    const openNewTab = () => {

      window.open(`${externalurl}iframe/${mytitle}/${myurl}`, '_blank')

    }

    return openNewTab()

  }

 

  if (!!keyp) {

    openExternalPage(content, url)

  }

 

  useEffect(() => {

    if (!!keyp) {

      selectMenu({ keyp: false })

    }

  }, [keyp])