gpt4 book ai didi

javascript - 我应该如何处理reactJS dom操作(例如滚动操作)

转载 作者:行者123 更新时间:2023-11-28 07:24:17 25 4
gpt4 key购买 nike

假设我想做一些非常简单的事情 - 在滚动时将标题更改为固定,可以直接操作 dom 吗?如果不是,我还应该如何攻击这个?

例如:

componentDidMount: function() {
$('.content').bind('scroll',function(){
if ( $(this).scrollTop() > 85) {
$('#x').addClass('fixedTitle');

} else {
$('#x').removeClass('fixedTitle');

}
});
},
componentWillUnmount: function() {
$('.content').unbind("scroll");
}

如果我想做一些更复杂的事情,比如了解 View 中现在有哪个元素并给它一个不同的类,该怎么办?

最佳答案

JQuery 工具和 ReactJS 并不总是能很好地结合在一起。如果你操作 DOM,React 的 DOM 虚拟表示就会与实际 DOM 不同步。如果您正在做一些小事情,例如将类更改为固定,那么它可能不会成为问题。

如果您正在做一些更大的事情,例如了解 View 中现在有哪个元素(不完全确定您的意思),那么该元素可能应该是一个 react 组件。

React 中的类名也可以更改,这可以基于某种状态来完成。查看此工具以在您的 react 代码中执行类似的操作:https://github.com/JedWatson/classnames .

关于javascript - 我应该如何处理reactJS dom操作(例如滚动操作),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29869679/

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