需要
网站有管理员端和用户端,须要点击跳转按钮时关上另一个 Tab,然而不心愿 Tab 开始太多。
从一个页面调转到另一个页面很简略,然而从那个页面回到以后页面就不容易。你可能想应用 window.opener.focus()
来从新回到关上的那个页面,但这是有效的。
实现办法
为以后 tab 设置一个惟一的 window.name
,而后在 window.open()
的第二个参数中传入这个 name
代码示例:
const getWindowName = (role: 'admin' | 'user') => {return `${location.origin}-${role}`;
};
const handleButtonClick = (goAdmin) => {
// 设置以后页面的 name
window.name = getWindowName(!goAdmin ? 'admin' : 'user');
// 调转到对于的页面
window.open(url, getWindowName(goAdmin ? 'admin' : 'user')).focus();}