diff --git a/packages/field/src/field.vue b/packages/field/src/field.vue index 4faedd9c9..1a10aafbf 100644 --- a/packages/field/src/field.vue +++ b/packages/field/src/field.vue @@ -101,7 +101,9 @@ export default { }, currentValue(val) { - if (this.autosize && this.type === 'textarea') this.sizeAdjust(); + if (this.autosize && this.type === 'textarea') { + this.$nextTick(() => this.sizeAdjust()); + } this.$emit('input', val); } }, diff --git a/test/unit/specs/field.spec.js b/test/unit/specs/field.spec.js index be6d895d1..47e8a8b7d 100644 --- a/test/unit/specs/field.spec.js +++ b/test/unit/specs/field.spec.js @@ -120,10 +120,10 @@ describe('Field', () => { textarea.trigger('input'); wrapper.update(); - wrapper.vm.$nextTick(() => { + setTimeout(() => { expect(wrapper.data().currentValue).to.equal('test'); expect(textareaElement.style.height).to.equal((textareaElement.scrollHeight - textAreaDiff) + 'px'); done(); - }); + }, 500); }); });