gpt4 book ai didi

reactjs - 如何在 Gatsby 中捕获 document.ready 或 window.load 事件

转载 作者:行者123 更新时间:2023-12-03 13:42:41 24 4
gpt4 key购买 nike

我对 Gatbsy 框架相对较新,我正在尝试找出一种方法来切换类DOMContentLoaded 或在 window.load 上,一旦用户可以看到屏幕就为它们设置动画。

这是我到目前为止所做的,但似乎不太合适:

componentDidMount = () => {
if (typeof window === "undefined") return
window.addEventListener("load", this.myEventHandler)
// or
if (typeof document === "undefined") return
document.addEventListener("DOMContentLoaded", this.myEventHandler)
}

有更好的方法吗?

提前谢谢您。

最佳答案

我认为您应该在 gatsby-browser.js 中添加这些事件监听器:

// gatsby-browser.js
// ES6
export const onClientEntry = () => {
window.onload = () => { /* do stuff */ }
}

// or commonjs
exports.onClientEntry = () => {
window.onload = () => { /* do stuff */ }
}

您不必在那里检查window,因为该文件仅在客户端运行。这是full list of available hooks .

而且据我所知 document 没有 ready 事件,它是 jQuery 的事情。您可能对DOMContentLoaded event感兴趣,尽管它和 jQuery 的现成 IIRC 之间有一些细微的差别。

关于reactjs - 如何在 Gatsby 中捕获 document.ready 或 window.load 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55249966/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com