@Bum1989

Как правильно подключать стороннюю библиотеку в компоненте vuejs для динамически появляющихся элементов?

Есть таблица (vuejs компонент), которая при загрузке страницы имеет лишь одну строку. Также таблица имеет кнопку добавления новой строки.
5b97bbb1c1eb5614892748.png
Последняя колонка таблицы - input, который юзает библиотеку dropify.
Задача - подключать dropify к динамически создаваемым input-ам в каждой новой строке.
Инициализация dropify - элементарная. Нужно получить элемент input-а по селектору и применить к нему метод dropify() из одноименной библиотеки с вашими необходимыми настройками.
Моим решение стало инициализировать dropify для input-ов с одинаковым классом в 2-ух хуках жизненного цикла - updated и mounted:
updated: function(){
      this.dropifyInit()
    },

mounted: function () {
      this.dropifyInit()
    },


Т.е. получается, что для первой строки я инициализирую dropify в хуке mounted, а всем добавленным в будущем строкам я это делаю в хуке updated.
Задачу то я решил, но есть стойкое внутреннее убеждение, что мой способ слишком громоздкий и не очень правильный.
  • Вопрос задан
  • 164 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
Сделайте отдельный компонент, который будет представлять ваш dropify инпут. У него в mounted инициализируйте dropify. И используйте этот компонент в своей таблице вместо обычного input'а.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы