我們目前正在嘗試實作一個非關鍵驗證層,該層針對某些驗證器檢查欄位輸入,而不將表單標記為“無效”,而是標記為“超出規范”,以便我們可以向用戶突出顯示這些欄位。特別是,我們正在討論具有上下邊界的數字范圍,應該將輸入欄位突出顯示為某種“超出規范”警告。輸入本身被認為是有效的,但“超出規范”,而用戶仍然應該能夠保存資料。
這是一個例子:
- 允許輸入任何整數(驗證),輸入規范為 90 到 100 之間的整數(規范)。
- 輸入“abc” -> 輸入型別錯誤 -> 錯誤資訊,不允許保存
- 輸入“ 95.1234 ” -> 輸入型別錯誤 -> 錯誤資訊,不允許保存
- 輸入“85” -> 正確的輸入型別,有效輸入,但不符合規范 -> 警告訊息,仍然允許保存
- 輸入“95”->正確的輸入型別,有效的輸入,在規范中->允許保存
這意味著正常的活頁夾驗證仍應阻止保存,而附加的非關鍵驗證應僅突出顯示它,而不是阻止它。
我們目前在 vaadin 版本 14 中使用 vaadin binder,并且正在使用轉換器和驗證器的功能。是否有可能將我們的層添加到 vaadin binder,以便它在我們當前的使用情況下流暢地執行?或者我們是否必須在正常的 vaadin binder 使用之外構建自己的非關鍵驗證層?在理想情況下,我們會在轉換和驗證階段之后將其固定:
- 欄位輸入
- 型別轉換
- 關鍵驗證
- 非關鍵驗證
- 輸入保存
我希望我的描述是足夠的。如果有任何問題,請告訴我,我會嘗試更詳細地描述它。提前致謝。
uj5u.com熱心網友回復:
從流程 14.7 開始,使用自定義 BinderValidationErrorHandler 的型別不是 ErrorLevel.ERROR 的錯誤可能會發生這種情況。
請參閱以示例https://github.com/vaadin/flow/pull/11384#issuecomment-879309037介紹它的 PR
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/414455.html
標籤:
上一篇:為觀察分配多個文本標志
