как компонент может удалить себя в Vue 2.0
как название, как я могу сделать это
из официальной документации просто скажите нам, что $delete может использовать аргумент 'object'и ' key'
но я хочу удалить компонент сам по себе, как это
this.$delete(this)
2 ответов
нет, вы не сможете удалить компонент напрямую. Родительский компонент должен будет использовать v-if
для удаления дочернего компонента из DOM.
Ref:https://vuejs.org/v2/api/#v-if
цитата из документов:
условно визуализировать элемент на основе истинности значения выражения. Элемент и содержащиеся в нем директивы / компоненты разрушаются и перестраиваются в ходе коленчатый рычаг.
Если дочерний компонент создается как часть некоторого объекта данных на parent, вам придется отправить событие parent через $emit
, измените (или удалите) данные, и дочерний компонент исчезнет сам по себе. Недавно был еще один вопрос по этому поводу: удалить дочерний компонент Vue
вместо удаления вашего компонента из родительского вы все еще можете использовать v-if
первый <div>
тег из самого компонента. Это оставит пустой компонент на Вашей странице, и это не лучшая практика, но может избежать обработки событий от родителя.