我对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
那里,因为此文件仅在客户端运行。这是可用钩子的完整列表。
AFAIKdocument
也没有ready
活动,这是jQuery
一回事。您可能对DOMContentLoaded事件感兴趣,尽管该事件与jQuery的现成IIRC之间有一些细微的差别。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句