Reactjs 如何在React Typescript中禁用滚动指定页面
我正在做我的大学项目,我有一个4页,我想知道如何禁用滚动选项只有特定的页面。我使用下面的代码部分,但它适用于整个页面。有人有办法吗Reactjs 如何在React Typescript中禁用滚动指定页面,reactjs,react-typescript,Reactjs,React Typescript,我正在做我的大学项目,我有一个4页,我想知道如何禁用滚动选项只有特定的页面。我使用下面的代码部分,但它适用于整个页面。有人有办法吗 componentWillMount(){ document.body.style.overflow='hidden' } 导出类MyBook扩展React.Component{ render(){ 返回( ) } } 是的,您可以 <Pages> <Page1 /> <Page2 /> .
componentWillMount(){
document.body.style.overflow='hidden'
}
导出类MyBook扩展React.Component{
render(){
返回(
)
}
}
是的,您可以
<Pages>
<Page1 />
<Page2 />
...
</ Pages>
如果使用func方法
useEffect(() => {
document.body.style.overflow = "hidden";
return () => {
document.body.style.overflow = "auto";
};
}, []);
请注意,当您需要滚动时,组件将立即安装去润滑将其设置回
自动
。可能有用。@AjeetShah您好,在哪里添加这个?您可以使用方法将属性溢出
重置回自动
@AjeetShah,但我只想禁用滚动一页,我添加了您提到的答案,但不起作用。那么你能给出答案吗?@kunalpanchal,我补充说你提到了答案,但不起作用,所以你能给出答案吗?
class Page2 extends React.Component {
componentDidMount() {
document.body.style.overflow='hidden'
}
componentWillUnMount() {
document.body.style.overflow='auto'
}
}
useEffect(() => {
document.body.style.overflow = "hidden";
return () => {
document.body.style.overflow = "auto";
};
}, []);