为了账号安全,请及时绑定邮箱和手机立即绑定

组件DidMount,React中出现意外的关键字“const”

组件DidMount,React中出现意外的关键字“const”

慕尼黑5688855 2022-09-02 21:09:07
我试图通过获取DOM元素并使用conceptDidMount向其传递函数来制作粘性标头,但是得到一个错误,即“const”是一个意外的关键字:元件: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;错误:Line 17:7:  Parsing error: Unexpected keyword 'const'  15 |     window.addEventListener('scroll', () => {  16 |       const isTop = window.scrollY > 100,> 17 |       const nav = document.getElementById('nav');     |       ^  18 |       if (isTop) {  19 |         nav.classList.add('scrolled');  20 |       }else {虽然,使用 React refs 可能更好,但这里发生的事情仍然很有趣。
查看完整描述

2 回答

?
ITMISS

TA贡献1871条经验 获得超8个赞

你写了:


 const isTop = window.scrollY > 100,

 const nav = document.getElementById('nav');

您需要将逗号替换为第 16 行末尾的 simicolon。这样:


 const isTop = window.scrollY > 100;

 const nav = document.getElementById('nav');


查看完整回答
反对 回复 2022-09-02
?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

第16行。您必须删除逗号,否则将第 17 行的 const 重新排列


查看完整回答
反对 回复 2022-09-02
  • 2 回答
  • 0 关注
  • 229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号