使用reactjs在单击按钮时关闭当前浏览器选项卡

时间:2019-03-05 06:42:49

标签: javascript html reactjs

是否有一种方法可以使用reactjs按下按钮来关闭当前浏览器选项卡? 我已经尝试过window.close()self.close(),但是似乎没有一种JavaScript方法有效。 我不想在React中关闭窗口的事件。我想关闭浏览器标签本身。 window.close()仅在使用window.open()时可以使用。

4 个答案:

答案 0 :(得分:0)

您现在只能关闭window.open()生成的这些标签。

答案 1 :(得分:0)

浏览器不允许关闭window.open()的非自打开标签 因此,它可以解决并说服您打开的浏览器

  
    

在同一页面中打开一个空白页面,然后将其关闭。

  

您可以尝试

window.open("about:blank", "_self");
window.close();

答案 2 :(得分:0)

最后的答案是不打开标签,您不能使用window.close()将其关闭。 我到处搜索,所以,我想出了一个窍门。 如果您使用的是reactjs钩子,只需使用useEffect这样的相同标签在同一选项卡中打开相同的url

useEffect(() => {
window.open("https://xyz.abc/", "_self", "");
console.log("open window");
}, []);

然后使close函数关闭,并在包含window.close();的close()中添加onclick

这肯定可以!

答案 3 :(得分:0)

function closeTab() {
    window.close();
}

然后在您的返回函数中的某处:

<button onClick={closeTab} >Close this Tab</button>