The package supports integration with form service GetForm.io. All you need is either provide formId for your GetForm form, or submit callback function to the Form component.
yarn add @halo-lab/vue-form-getform-io
or
npm install @halo-lab/vue-form-getform-io- import all components
import {
Form,
Label,
Input,
TextArea,
Button
} from '@halo-lab/vue-form-getform-io'- import styles
<style>
@import "@halo-lab/vue-form-getform-io/styles";
</style>-
:formId(required parameter, string) - the id of your form on getform). IfsubmitHandleris provided, the parameter becomes optionalsubmitHandler(optional parameter, function) - your custom submit handler (will be responsible for submitting the form on your platform and should receive values of the form). If not provided,:formIdis requiredclassName(optional parameter, string) - class name for custom styling
-
-
placeholder(required parameter, string) - the placeholder in an input fieldtype(required parameter, string) - the type of an input, may betext,emailornumbername(required parameter, string) - the name of an input fieldlabel(required parameter , string) - the label of an input fieldvalidator(optional parameter) - the array of objects in form of[name: <validatorKey>, message<optional>: <validatorMessage>, parameter<required for max, min, maxLength, minLength, regexp>: <validatorValue>. Validator's names may be:required,email,number,maxLength(must be provided the<validatorValue>),minLength(must be provided the<validatorValue>),max(must be provided the<validatorValue>),min(must be provided the<validatorValue>),regexp(must be provided the<validatorValue>),func(must be provided the<validatorValue>) - the validation function, which returns a truthy value if an error is detected, and a message for an error. For example:[{name: "required"}, {name: "email", message: "Please, enter a valid email"}, {name: "max", message: "should be a number!", value: 6}, {name: regexp, value: /^[0-9]*$/}].
defaultValue(optional parameter, string) - the default value of an inputfieldClassName(optional parameter, string) - the class name for custom input container stylinglabelClassName(optional parameter, string) - the class name for custom label stylinginputClassName(optional parameter, string) - the class name for custom input stylingerrorClassName(optional parameter, string) - the class name for custom error state stylingisDisabled(optional parameter, boolean) - the flag to make an input field disabled
-
name(required parameter, string) - the name of an input fieldlabel(required parameter , string) - the label of an input fieldoptions(required parameter) - the array of objects in form of{label: <display value>, value: <option value>}validator(optional parameter) - the array of objects in the form of{name: <validatorKey>, message<optional>: <validatorMessage>, parameter<required for max, min, maxLength, minLength, regexp>: <validatorValue>}. The validator's name may be:required, For example:[{name: "required", message: "Please, select a city"}.
search(optional parameter, boolean) - the flag if using searchable selectdefaultValue(optional parameter, string) - the default value of the inputfieldClassName(optional parameter, string) - the class name for custom input container stylinglabelClassName(optional parameter, string) - the class name for custom label stylinginputClassName(optional parameter, string) - the class name for custom input stylingerrorClassName(optional parameter, string) - the class name for custom error state stylingisDisabled(optional parameter, boolean) - the flag to make an input field disabled
-
name(required parameter, string) - the name of an input fieldlabel(required parameter , string) - the label of an input fieldfields(required parameter) - the array of objects in form of{value: <input value>, label: <input label>, <checked>: <boolean flag if the input should be checked default>}fieldClassName(optional parameter, string) - the class name for custom input container stylinglabelClassName(optional parameter, string) - the class name for custom label stylinginputClassName(optional parameter, string) - the class name for custom input stylinginputLabelClassName(optional parameter, string) - the class name for custom label stylingisDisabled(optional parameter, boolean) - the flag to make an input field disabled
-
name(required parameter, string) - the name of an input fieldlabel(required parameter , string) - the label of an input fieldfields(required parameter) - the array of objects in form of{value: <input value>, label: <input label>}fieldClassName(optional parameter, string) - the class name for custom input container stylinglabelClassName(optional parameter, string) - the class name for custom label stylinginputClassName(optional parameter, string) - the class name for custom input stylinginputLabelClassName(optional parameter, string) - the class name for custom label stylingisDisabled(optional parameter, boolean) - the flag to make an input field disabled
-
name(required parameter, string) - the name of an input fieldvalidTypes(optional parameter) - the array of strings with valid file extensionsisMultiple(optional parameter, boolean) - the flag to accept multiple filesfieldClassName(optional parameter, string) - the class name for custom input container stylingtitleClassName(optional parameter, string) - the class name for the custom label for the entire stylingtextClassName(optional parameter, string) - the class name for custom text styling
-
label(required parameter, string) - the text for the button's labeltype(optional parameter, string) - the type of the buttonclassName(optional parameter, string) - the class name for custom button styling
-
<Form :formId="apiKey">
<Input
fieldClassName="myField"
inputClassName="inputMy"
errorClassName="error"
labelClassName="myLabel"
type="text"
placeholder="Your Name"
name="name"
:validator="[
{ name: 'required' },
{ name: 'letters' }
]"
label="Your Name"
/>
<Input
placeholder="Email Address"
type="email" name="email"
:validator="[{ name: 'required' }, { name: 'email' }]"
label="Email Address"
/>
<TextArea
label="Message"
placeholder="Message"
name="message"
:validator="[{ name: 'required' }]"
/>
<Select
label="Your City"
name="city"
search
:validator="[{ name: 'required' }]"
:options="[
{ label: 'New York', value: 'New York' },
{ label: 'Paris', value: 'Paris' },
{ label: 'Kyiv', value: 'Kyiv' }
]"
/>
<RadioGroup
label="Your Gender"
name="gender"
:fields="[
{value: 'male', label: 'Male'},
{value: 'female', label: 'Female', checked: true}
]"
/>
<CheckBoxGroup
label="Your Favorite food"
name="food"
:fields="[
{ value: 'chocolate', label: 'Chocolate' },
{ value: 'ice-cream', label: 'Ice-cream' },
{ value: 'coffee', label: 'Coffee' }
]"
/>
<FileInput
name="images"
isMultiple
:validTypes="['jpg', 'png', 'jpeg', 'gif', 'pdf', 'doc', 'docx']"
/>
<Button label="Send form" type="submit" className="button-filledMy" />
</Form>Have fun ✌️