Tim
самое главное при инициализации компонента обьявить этот массив
Tommy
Ну типа по клику прячется из дома и наоборот
нужно поконкретнее просто я вижу условие шоу не равно шоу)))
Roman
не равно это !=
Roman
а тут show присваивается not show
Roman
инверсия однако
MaybeLocal
О
MaybeLocal
Инверсия
MaybeLocal
Точно
MaybeLocal
Изначально слово видно в доме
MaybeLocal
По клику в реальном доме это слово не видно
MaybeLocal
Это при условии что вью рулит этим свойством show
Roman
Vue.set(object, key, value)
а вот, кстати, интересно, если приезжает не новый массив, а только обновление объектов это ведь только перебором можно применить, а значит есть смысл вместо массива хеш юзать, верно?
Tommy
чет сложна... то есть у нас в переменной show лежит false при клике мы туда присваиваем true
MaybeLocal
Ага
Tommy
а как оно при клике тогда обратно становится?
ℝei
чат превращается в нубов :C этот вопрос даже не про vue совсем. это начальный js
Anonymous
раньше было лучше
Tommy
это ещё только разогрев, пока сложные вопросы идут...
MaybeLocal
Ну смотри
MaybeLocal
Сначала мы за немцев
MaybeLocal
По условию когда нам дают по голове мы становимся за наших
MaybeLocal
По этому условию мы всегда меняем убежения
MaybeLocal
Потом нам снова дают по голове и мы опять становимся за немцев
ℝei
Tim
а вот, кстати, интересно, если приезжает не новый массив, а только обновление объектов это ведь только перебором можно применить, а значит есть смысл вместо массива хеш юзать, верно?
ну как бэ без вариков. хочешь кастомнойго сценария обновления - перебирай форычами. по мне так гемор) я решил просто заново запрашивать весь список а не ловить там изменения.
Евгений
там логики на 10-15 строк
Евгений
и вообще просто необходимо, если список влияет на какие-то элементы вне vue
Евгений
возьмем, например, карту с маркерами. не будешь же стопиццот маркеров переутанавливать на каждое присвоение или модификацию массива.
Tim
ну эт обсуждение сферического коня) Конечно есть ситуации когда без этого никак) например при сонхронизации 2 узлов
Roman
тогда и в обновах есть смысл сразу хеш слать, а не массив (мне так даже проще) почему-то API обычно массивы отдают смысл не слать всё или не делать лишнюю работу есть всегда, в одном случае мы экономим трафик, в другом ресурсы.
Roman
чтобы при применении по хешу находить элемент, а не перебором
Евгений
можно строить индексы
Евгений
Backbone.Collection таким страдает
Rafael 🌵
Roman
бек шлет хеш, на вронте применяем хеш к хешу =)
binary
вот только массив изменений может запросто быть больше просто нового массива. И еще бекенд чтобы логать и хранить эти изменения для каждого клиента тоже будет прилично напрягаться, тут кмк прям совсем серебряной пули нет.
Roman
можно ж при изменении на беке всем в вебсокет новое складывать, ничего особо хранить не надо
Roman
но в целом вырожденные случаи конечно есть
Roman
тут скорее вопрос как в общем случае проще работать со списком объектов и я делаю вывод, что хешем проще
Bushrut
гайз, как избавиться от ворнинга [vue-language-server] Elements in iteration expect to have 'v-bind:key' directives.
Rafael 🌵
Тому элементу, который ты повторяешь, надо присвоить индивидуальный key
Rafael 🌵
Правда зачем???
Rafael 🌵
Из доков я ни хера не понял
Roman
чтобы убрать ворнинг
Roman
везде пишут, что этот ворнинг – баг, но фиксов всё нет, и проще прописать ключ
Bushrut
ок, с этим разорбрался, а как с этим ? [vue-language-server] This 'v-if' should be moved to the wrapper element.
Bushrut
Тоже код покажи
<active-phrases-filter v-for="phrase in activePhrasesVerbs" v-if="activePhrasesVerbs.length != 0">
Bushrut
Можно ссылочку?
про баг тож читал, н ов ишью писали про фикс, н оя так и не вкурил как ег опрописать в еслинт
Rafael 🌵
<active-phrases-filter v-for="phrase in activePhrasesVerbs" v-if="activePhrasesVerbs.length != 0">
Я так погыл, что v-for и v-if надо разместить на разные элементы
Bushrut
Я так погыл, что v-for и v-if надо разместить на разные элементы
походу так, но мне некуда его перемещать
Rafael 🌵
Bushrut
Bushrut
Иф на див и в этом диве v-for?
в темплейт кинул и ок
Bushrut
спасибо
gearmobile
гайз, что-то я не пойму ( Vuex ) вот код - https://repl.it/Kevx/1 но мне выдается ошибка - Uncaught Error: [vuex] getters should be function but "getters.getCounter" in module "moduleCounter" is 0. почему?
gearmobile
если убираю модуль и возвращаю все getters, actions, mutations назад в store/index.js - все работает
Andrey
Я vue не знаю, но возможно сам движок хранит ссылку на функцию и дергает ее. А если ты возвращаешь значение, то все... но это догадки мои.
Andrey
Он же тебе пишет, что должна быть функция? Может контракт такой.
gearmobile
насколько я понял - когда я выношу getter getCounter (state) { return state.counter } из store/index.js в отдельный модуль, Vuex начинает считать, что это не getter, а функция?
gearmobile
но почему?
gearmobile
или я неправильно написал формат модуля? (
Andrey
Расскажи как узнаешь ;)
gearmobile
porca madonna - я неправильно формат модуля описал vue, vuex в модуле нах... не нужен бес попутал (( а была ведь мысля-прозрение с самого начала ))
gearmobile
https://repl.it/Kewo/1 - так должно быть
Bogdan
Как из vuex модуля передать state в компонент?
Bogdan
computed: mapState([ 'modal', ], 'products'),
Bogdan
не канает
Rafael 🌵
Bogdan
да вот не получается по доку...
Rafael 🌵
computed: { ...mapState({ abc: 'abc' } ) }
Bogdan
<h1>{{ modal }}</h1> должно что-то показать же