diff --git a/src/FormularioInput.vue b/src/FormularioInput.vue
index 2df8c4d..d36649f 100644
--- a/src/FormularioInput.vue
+++ b/src/FormularioInput.vue
@@ -183,7 +183,9 @@ export default {
this.observeErrors({ callback: this.setErrors, type: 'input', field: this.nameOrFallback })
}
this.updateLocalAttributes(this.$attrs)
- this.performValidation()
+ if (this.errorBehavior === 'live') {
+ this.performValidation()
+ }
},
beforeDestroy () {
if (!this.disableErrors && typeof this.removeErrorObserver === 'function') {
diff --git a/src/libs/utils.js b/src/libs/utils.js
index 09a596d..124c22b 100644
--- a/src/libs/utils.js
+++ b/src/libs/utils.js
@@ -33,6 +33,14 @@ export function shallowEqualObjects (objA, objB) {
return false
}
+ if (objA instanceof Date && objB instanceof Date) {
+ return objA.getTime() === objB.getTime();
+ }
+
+ if (len === 0) {
+ return objA === objB;
+ }
+
for (var i = 0; i < len; i++) {
var key = aKeys[i]
diff --git a/test/unit/FormularioForm.test.js b/test/unit/FormularioForm.test.js
index 01d2644..1f6d980 100644
--- a/test/unit/FormularioForm.test.js
+++ b/test/unit/FormularioForm.test.js
@@ -136,6 +136,31 @@ describe('FormularioForm', () => {
expect(wrapper.vm.formValues).toEqual({ testinput: 'edited value' })
})
+ it('field data updates when it is type of date', async () => {
+ const wrapper = mount({
+ data () {
+ return {
+ formValues: {
+ testdate: new Date(123),
+ }
+ }
+ },
+ template: `
+