1. 程式人生 > >enter(click) 與 blur衝突的解決辦法

enter(click) 與 blur衝突的解決辦法

需求描述

inputon-enteron-blur 事件觸發時儲存文字,文字不能有重複。

問題描述

on-enter 觸發之前會先觸發 on-blur 導致執行兩次儲存操作,第二次也就是 on-enter 觸發的時候會提示文字重複,儲存不成功

解決辦法

設定一個全域性變數 iSave: falseif(!iSave) 執行儲存操作,下次觸發編輯文字之前再將 iSave 重置為 false

補充

網上還有另一種比較常用的解決辦法,就是給 on-blur 事件設定定時器延遲觸發。但是 on-blur 到底比 on-enter 早多久觸發還要看具體情況,在我這個專案中測試了幾次,一般是1-2s偶爾超過2s或低於1s,也會受網路和介面的影響。所以我沒有用這種解決辦法。

以上