Flow - 如何在不检查instanceof的情况下使用getElementById返回HTMLInputElement?

时间:2017-01-16 14:09:44

标签: javascript types flowtype

如果我的<input>标识为asdf,并且我运行const asdf = document.getElementById('asdf'),那么Flow假定asdfHTMLElement而不是{{1} }}。我需要HTMLInputElement成为asdf,以便Flow允许我在其上调用HTMLInputElement,因为value无法保证在value上存在但是在HTMLElement s。所以要做到这一点,我必须检查HTMLInputElement,然后运行我想要的代码。

有更好的方法吗?

1 个答案:

答案 0 :(得分:-3)

如果'asdf'不是'input'而你需要确定:

const asdf = document.getElementById('asdf')

if (asdf.tagName === 'INPUT') {
    //your code...
}