Google News
logo
Aurelia - Interview Questions
What is Validate Binding Behavior in Aurelia?
The validate binding behavior enables quick and easy validation for two-way data-bindings. The behavior registers the binding instance with a controller, enabling the system to validate the binding's associated property when the validate trigger occurs (blur / change). The binding behavior is able to identify the object and property name to validate in all sorts of binding expressions :
 
Automatic Binding Validation : 
  <input type="text" value.bind="firstName & validate">
  
  <input type="text" value.bind="person.firstName & validate">
  
  <input type="text" value.bind="person['firstName'] | upperCase & validate">
  
  <input type="text" value.bind="currentEntity[p] & debounce & validate">​
  
validate accepts a couple of optional arguments enabling you to explicitly specify the rules and controller instance:
 
Explicit Binding Validation : 
  <input type="text" value.bind="firstName & validate:personController">
  
  <input type="text" value.bind="firstName & validate:personRules">
  
  <input type="text" value.bind="firstName & validate:personController:personRules">​
  
The validate binding behavior obeys the associated controller's validateTrigger (blur, focusout, change, changeOrBlur, changeOrFocusout, manual). If you'd like to use a different validateTrigger in a particular binding use one of the following binding behaviors in place of & validate :
 
* & validateOnBlur : the DOM blur event triggers validation.

* & validateOnFocusout : the DOM focusout event triggers validation.

* & validateOnChange : data entry that changes the model triggers validation.

* & validateOnChangeOrBlur : DOM blur or data entry triggers validation.

* & validateOnChangeOrFocusout : DOM focusout or data entry triggers validation.

* & validateManually : the binding is not validated automatically when the associated element is blurred or changed by the user.
Advertisement