Pavel
Тоже верно, но тогда появляется проблема при релоаде, надо запрашивать данные в этом компоненте где использую, и получаю лишний запрос.
Flexo
Потом когда надо, собирай все нужные данные из сторы и отправляй
Pavel
нет
Anonymous
Наконец то сделал компонент автокомплита из vue-multiselect
Nikita
Тогда что за reload?
Pavel
обновление страницы
Nikita
Wtf? Тогда почему ты беспокоишься о лишнем запросе?
Pavel
Точнее не лишний запрос, а одинаковый запрос. Я эти же данные заправшиваю при загрузке приложения.
Pavel
Через computed они отлично подтягиваются
Pavel
а геттер отдает undefined, приходится делать запрос и через then обрабатывать
Nikita
В родители повесь v-if на компонент, в родители запрашивай данные.
Pavel
я в корневом запрашиваю app.vue
Nikita
Ну тогда просто повесь v-if, а в родители получи доступ к гетеру
Nikita
Когда геттер обновится, появится компонент.
Anonymous
А есть у кого книги годные по vue? Дока слишком сухая, такое себе читалово :D
Alexey
Уу
Аліса 🏳‍🌈 Байрактарқызы
Уу
Nikita
Уу
Flexo
Уу
Aleksey
Ээ
Dmitriy
Уууу
Аліса 🏳‍🌈 Байрактарқызы
Я не очень много таких крутых док, как у вьюхи видел.
Anonymous
not "Уу"
Pavel
Охренеть заявление.
Ок, но слабо представляю как он должен обновится, если он сразу же undefing
Alexey
сильное?
Сильное заявление. Проверять мы его, конечно же, не будем
Nikita
Почему он у тебя undefined, ты в сторе ему не задал значение по умолчанию? Типо null
Nikita
Как я понял из твоего текста, у тебя есть компонент с формой в котором редактируются данные и апп в котором запрашиваются эти данные. И ты не хочешь, чтоб эти данные запрашивались повторно. Тогда логично, запросить данные в родители или апп, ждать пока они появятся и потом уже показывать компонент.
Pavel
Точнее я поучаю обсервер без данных
Nikita
К счастью у нас все реактивно, и поэтому достаточно v-if повесить.
Pavel
Обвервер с прототипом и вэлью вроде, в котором опять же прототип а данных нет
Pavel
Это все решаемо через watch но это все усложняет код
Pavel
Поэтому и решил сделать как в мануале по vuex
Nikita
Когда ответ приходит, данные появляются в том геттере?
Pavel
Мне в любом случае надо сделать новый объект user (Object.assign), поэтому тут computed не подойдет
Nikita
Ты на мой вопрос ответь
Pavel
Ты на мой вопрос ответь
Сча воссоздам, и отвечу
Nikita
Просто геттеры vuex, работают как комьютед свойства.
Nikita
И мне не понятно, откуда у тебя проблемы.
Pavel
Ты на мой вопрос ответь
created() { console.log(this.$store.getters.getProfile); }, http://c2n.me/3OS1VoX
Nikita
Или от чего.
Pavel
http://c2n.me/3OS23w9
Nikita
Когда ответ пришел, данные появились в get profile?
Pavel
нет
Pavel
Вот так работает: computed: { profile() { return this.$store.getters.getProfile; } }, created() { this.$store.dispatch('getProfile') .then(() => { this.user = Object.assign({}, this.profile) }) },
Pavel
но каждый раз когда заходишь на страницу, данные запрашиваются, а я хочу их брать из store
Pavel
Короче буду разбираться, спасибо за наводки.
Nikita
Ты переписываешь комьютед свойство?
Pavel
Wtf???
нет, создаю this.user
Pavel
можно из промиса данные взять
Pavel
Не суть
Nikita
Хм, звучит как хрень какая та. Если бы делал я. То в родители делал диспатч. Потом геттер прикидывал в компонент формы, а в ней уже делал бы assign.
Nikita
И вешал бы на компонент формы v-if=profile
Nikita
В сторе у свойства профиль повесил бы значение по умолчанию null
Pavel
Основная проблема в том что данные из dispatch используются в нескольких компонентах, независимых друг от друга ( не вложенных )
Alex
А есть у кого книги годные по vue? Дока слишком сухая, такое себе читалово :D
Расскажите чем вам доки не нравятся, что там может непонятно и требует лучшего описания? :)
Anonymous
Да ну я не говорю, что они плохие же, ну
Anonymous
Я о том, что было бы круто книжку, где на примерах разрабатывают приложение)
Nikita
Ему секретные техники нинзя нужны
Anonymous
😕
Alex
И я не говорю, что вы считаете их плохими) но видимо есть какие-то недоработки, раз так высказались
Alex
а пример какого приложения?)
Nikita
Основная проблема в том что данные из dispatch используются в нескольких компонентах, независимых друг от друга ( не вложенных )
У меня для этого использовался сервис авторизации. В нем я диспатчу запрос на данные, а пока данные не загрузчтсч, показываю лоадер
Anonymous
а пример какого приложения?)
Любого, той же соц. сети, очень базовыми фукнциями, и что все основы vue потихоньку проходить
Alex
Ну это уже видосы какие-то искать, или курсы
Alex
в документации делать соц.сеть как-то не комильфо)
Anonymous
Но книг получается нет?)
Anonymous
Я и не говорю, что там надо
Nikita
А как другие компоненты узнают что данные загружены?
Через v-if. У меня в корне router-view, а на нем v-if. И пока данных нет, показываю лоадер
Ivan Li
А как другие компоненты узнают что данные загружены?
а если сделать геттер и через него в др компоненты передавать?
Anonymous
Видимо, слишком свежая технология