diff --git a/packages/field/src/FormRegistrarMixin.js b/packages/field/src/FormRegistrarMixin.js index c91d03835..be7b8a200 100644 --- a/packages/field/src/FormRegistrarMixin.js +++ b/packages/field/src/FormRegistrarMixin.js @@ -25,6 +25,7 @@ export const FormRegistrarMixin = dedupeMixin( super(); this.formElements = []; this.__readyForRegistration = false; + this.__hasBeenRenedered = false; this.registrationReady = new Promise(resolve => { this.__resolveRegistrationReady = resolve; }); @@ -38,7 +39,9 @@ export const FormRegistrarMixin = dedupeMixin( super.connectedCallback(); } formRegistrarManager.add(this); - formRegistrarManager.becomesReady(this); + if (this.__hasBeenRenedered) { + formRegistrarManager.becomesReady(this); + } } disconnectedCallback() { @@ -57,6 +60,7 @@ export const FormRegistrarMixin = dedupeMixin( this.__resolveRegistrationReady(); this.__readyForRegistration = true; formRegistrarManager.becomesReady(this); + this.__hasBeenRenedered = true; } addFormElement(child) {