Field Properties
Common properties of field
Property
Default
Accepted values
Description
type
none
String
Type of field
label
none
String
Label of field
model
none
String
Name of property in the model
id
auto-generated
String
inputName
none
String
featured
false
Boolean
is it a featured (bold) field? Can be a function too.
visible
true
Boolean
if false
, field will be hidden. Can be a function too.
disabled
false
Boolean
if true
, field will be disabled. Can be a function too.
required
false
Boolean
If true
, Stylizes the field as required. Works in conjunction with validators.
multi
false
Boolean
if true
, it will be visible only if multiple
is true
in component attributes
default
none
any
Default value of the field (used when creating a new model)
hint
none
String
Show this hint below the field
help
none
String
Tooltip/Popover triggered by hovering over the question icon before the caption of field. You can use HTML elements too.
none
Function
or Array
Validator for value. It can be an array of functions too.
none
styleClasses
none
String
or Array
Custom CSS style classes. They will be appended to the .from-group
none
Array
Array of button objects. This is useful if you need some helper function to fill the field. (E.g. generate password, get GPS location..etc)*
none
Object
Common methods of field
Method
Description
get: function(model) {...}
A read formatter function where you can format the model value to the field
set: function(model, value) {...}
A write formatter function where you can format the field value to the model
Common events of field
Name
Attributes
Description
onChanged
(model, newVal, oldVal, field)
Triggered if the value of field is changed.
onValidated
(model, errors, field)
Triggered if validation of field is executed.
Example
Dynamic visibility
With the visible, disabled, readonly
and featured
properties, you can also show or disable fields dynamically.
Those properties can take a Function
with a model
parameters and expect a Boolean
in return.
Generated values
values
For fields select, checklist, selectEx or vueMultiSelect, the values
property can be a Function
. In this case, you can dynamically generate the items.
Custom Attributes
You can add custom HTML Attributes, such as data-attributes
, to fields by using an attributes
object.
You can also specify the attributes of the surrounding wrapper and label:
The attributes object is broken up into "wrapper", "input" and "label" objects which will attach attributes to the respective HTML element in the component. All VFG Core fields support these, where applicable.
If you do not specify where the attributes go, and just provide a flat "attributes" property, then the attributes will be assigned to the "input" element on the component by default.
Last updated