JavaScript · 2022年4月27日 0

KeyboardEvent对象的keyCode属性已被弃用

原始方案

<Button
  onKeyDown={(event) => {
    if (event.keyCode === 13) {
      // 阻止默认的回车事件执行
      event.preventDefault();
    }
  }}
>
  我是一个按钮
</Button>

升级改造

<Button
  onKeyDown={(event) => {
    const { key, keyCode } = event;
    let handled = false;
    if (key !== undefined && key === 'Enter') {
      handled = true;
    } else if (keyCode !== undefined && keyCode === 13) {
      handled = true;
    }
    if (handled) {
      // 阻止默认的回车事件执行
      event.preventDefault();
    }
  }}
>
  我是一个按钮
</Button>