@FreeArcher
Senior 1С; php, JS Starter

В какой функции прочитать закладки из chrome при использовании vue?

Делаю расширение для chrome с использованием vue. Мне нужно прочитать закладки. Они читаются асинхронно и всегда после того, как выполнится приложение.
Я не смог отловить их в событиях жизненного цикла. Все равно если сделать console.log() то функция получения закладок выполняется самой последней.

Я так понимаю, надо закладки гарантированно прочитать до создания vue или перерендерить компонент, когда они прочитаны. Подскажите, как это сделать?

export default {
  name: 'App',
  components: {
    BkContener
  },
  data () {
    return {
        bookmarks
    }
  },
    methods: {
    getBookmarks(bookmarkTree) {
                chrome.bookmarks.getTree((bookmarkTree) => {
                    console.log('bookmarks tree -> ' + bookmarkTree);
                    console.log(bookmarkTree);    
            }
    }

  },
  • Вопрос задан
  • 75 просмотров
Решения вопроса 1
yarkov
@yarkov Куратор тега Vue.js
Помог ответ? Отметь решением.
Полагаю вы собираетесь сделать так:
export default {
  name: 'App',
  components: {
    BkContener
  },
  data () {
    return {
      bookmarks: null
    }
  },
  methods: {
    getBookmarks(bookmarkTree) {
      chrome.bookmarks.getTree((bookmarkTree) => {
        console.log('bookmarks tree -> ' + bookmarkTree);
        console.log(bookmarkTree);
        this.bookmarks = bookmarkTree; // Угадал?
      })
    }
  }
}


Ну и повесьте на корень темплейта директиву:
<div v-if="bookmarks">
    <!-- Остальной темплейт -->
</div>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы