comme titre, comment puis-je le faire
de la documentation officielle, il suffit de nous dire que $ delete peut utiliser l'argument 'objet' et 'clé'
mais je veux supprimer un composant en tant que tel
this.$delete(this)
Non, vous ne pourrez pas supprimer directement un composant. Le composant parent devra utiliser v-if
pour supprimer le composant enfant du DOM.
Réf.: https://vuejs.org/v2/api/#v-if
Cité de docs:
Rendre conditionnellement l'élément en fonction de la véracité de la valeur d'expression. L'élément et ses directives/composants contenus sont détruits et reconstruits lors des basculements.
Si le composant enfant est créé dans le cadre d'un objet de données parent, vous devrez envoyer un événement à parent via $emit
, modifier (ou supprimer) les données et le composant enfant disparaîtra de lui-même. Il y avait une autre question à ce sujet récemment: Supprimer un composant enfant Vue
Au lieu de supprimer votre composant de son parent, vous pouvez toujours utiliser v-if
sur la première balise <div>
du composant lui-même. Cela laisserait un composant vide dans votre page. Ce n'est pas une bonne pratique, mais vous éviterez peut-être de gérer les événements de parent.