簡體   English   中英

余燼等待用戶填寫表格

[英]ember waiting for user to complete the form

在ember中,我有一個表單,該表單詢問用戶其遠程服務器的用戶名和密碼,然后我想通過進行ajax調用來驗證憑據。 當前,我使用的是定制組件,該組件使我可以在單擊“下一步”時綁定任何操作,或者在可以提交憑據的地方進行提交,並在需要時拋出錯誤。 但是一旦發生錯誤,用戶將無法單擊下一步按鈕(組件的實現方式),因此不會進行第二次驗證。 因此,我認為要創建一個計算屬性,該屬性將查找用戶名和密碼(因此在輸入時進行ajax調用)。 但是這種方法的問題是:每次在這些框中輸入內容時,都會觸發計算屬性,該屬性將進行ajax調用(我不想無故進行多次網絡調用)。 在ember中,有什么方法可以等待用戶完成輸入然后調用任何類型的操作?

更好的方法是將oninput與action結合使用:

<input oninput={{action "onInput" value="target.value"}}> 

然后從ember-lifeline插件中的debounceTask (此示例),或使用ember-concurrency,從onInput動作對ajax函數的去抖動調用:

actions: {
   onInput(val){
      debounceTask(this, 'sendAjax', val, 500);
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM