Javascript 意外关键字';常数';在componentDidMount中,进行反应
我试图通过获取DOM元素并使用componentDidMount向其传递一个函数来创建一个粘性头,但得到一个错误,“const”是一个意外的关键字: 组成部分:Javascript 意外关键字';常数';在componentDidMount中,进行反应,javascript,reactjs,react-native,dom,Javascript,Reactjs,React Native,Dom,我试图通过获取DOM元素并使用componentDidMount向其传递一个函数来创建一个粘性头,但得到一个错误,“const”是一个意外的关键字: 组成部分: class Header extends Component { componentDidMount(){ window.addEventListener('scroll', () => { const isTop = window.scrollY > 100, const nav =
class Header extends Component {
componentDidMount(){
window.addEventListener('scroll', () => {
const isTop = window.scrollY > 100,
const nav = document.getElementById('nav');
if (isTop) {
nav.classList.add('scrolled');
}else {
nav.classList.add('scrolled');
}
});
}
componentWillUnmount() {
window.removeEventListener('scroll');
}
render() {
return (<>
<header>
<nav class="nav" id="nav">
<ul class="header-list">
<li>
<img alt='phone' src={phonelogo} />
</li>
<li>123456789</li>
</ul>
<ul class="header-list">
<li>
<img alt='email' src={email} />
</li>
<li>123@gmail.com</li>
</ul>
</nav>
</header>
</>)
};
};
export default Header;
虽然使用React REF可能更好,但这里发生的事情仍然很有趣。第16行。您必须删除逗号,否则将第17行的常量重新命名为:
const isTop = window.scrollY > 100,
const nav = document.getElementById('nav');
您需要在第16行末尾用一个冒号替换逗号。像这样:
const isTop = window.scrollY > 100;
const nav = document.getElementById('nav');
哦:谢谢你!!
const isTop = window.scrollY > 100;
const nav = document.getElementById('nav');