【发布时间】:2020-12-24 08:48:20
【问题描述】:
加载后我需要重定向页面并从 URL 获取参数。我可以通过单击按钮来完成。
但我希望自动重定向页面(无需用户输入)。我正在使用window.addEventListener('load', () => handleClick()),它在 Chrome 上运行良好。但在 Safari(桌面版和移动版)上,它并不总是会触发(只是有时会触发 - 并非总是如此)。
我可以通过在处理程序中添加 alert('Beginning'); 来看到这一点 - 在 Chrome 上,这会在页面加载后自动触发,但在 Safari 上不会。
我该如何解决这个问题?
谢谢!
const handleClick = async (event) => {
alert('Beginning'); //For debugging
const stripe = await stripePromise;
const { error } = await stripe.redirectToCheckout({
param,
});
}
if (typeof window !== `undefined`) {
const param = new URLSearchParams(window.location.search).get('param');
}
const Page = () => {
if (typeof window !== `undefined`) {
window.addEventListener('load', () => handleClick())
}
return (
<section >
<button role="link" onClick={handleClick}> //Only for fallback
Press
</button>
</section>
);
};
export default Page;
【问题讨论】:
标签: javascript html reactjs safari gatsby