MDC Web组件-从文本字段停用焦点无效

我正在尝试通过使用mdc Web组件来实现自动完成输入。我有一个菜单选择了事件监听器,我想在其中停用对文本字段的关注。我已经尝试过使用 MDCTextFieldFoundation deactivateFocus 方法:

const inputFoundation = new MDCTextFieldFoundation(
  document.querySelector(".mdc-text-field")
);
menu.listen("MDCMenu:selected",e => {
  console.log(inputFoundation);
  input.value = e.detail.item.dataset.value;
  inputFoundation.deactivateFocus();
});

但是,这不起作用。在控制台中,当文本字段仍处于焦点状态时,我还可以看到输入的属性isFocused为false。您可以看到整个代码和框here。我在这里做错什么了,从文本字段中停用焦点的正确方法是什么?

iCMS 回答:MDC Web组件-从文本字段停用焦点无效

来自docs

停用文本字段的焦点状态。通常调用以响应输入的模糊事件。

因此deactivateFocus会更新组件的状态,但不会改变焦点。

您需要自行致电blur。例如这样的

document.activeElement.blur()
本文链接:https://www.f2er.com/2282497.html

大家都在问