今天在线笔试遇到几个之前没有注意的坑点,记录下
change事件和input事件
react中input的change事件是经过修改的,当input的输入内容改变就会触发;而原生input的change事件是当失去焦点切value值改变才会触发,在原生中用oninput比较好。
keyup、keypress、keydown
红宝书上解释: - keyup 释放键盘上的键时触发 - keydown 按下任意键触发 - keypress 按下键盘上的字符键触发
但是,由于硬件的问题。如果要用keypress和keydown事件实现一个autocomplete时,第一次输入的字符是似乎有bug的,所以对于input框的输入监听,不推荐使用keypress和keydown。所以要用keyup或者input事件来实现。