Anton
@c01nd01r у меня есть подозрение, что говорим об одном и том же, с разных сторон :)
Anton
Компонент работает с data и computed
Anton
Это его, скажем так, локальная копия данных
MXLTN
как передать компоненту не через пропсы а через дату при инициализации?
Stanislav
Anton
Дата в данном случае станет дефолтным конфигом
MXLTN
Anton
Компоненту нельзя отдать что-то не через пропсы
MXLTN
вот
Anton
Есть 2 варианта - пропсы и стор (иногда эвент-бас, но его не рекомендуют)
MXLTN
ок, тогда я передаю пропсы который опередяют изначальное состояние
Anton
Да
Anton
Они же могут и поменять потом в дальнейшем состояние управляемого компонента
MXLTN
MXLTN
но если я реализую логику обновления состояния не сервере внутри компонента
Anton
Имеете ввиду полученные данные потом мутировать?
MXLTN
MXLTN
сейчас я привязываю props active к модели чекбокса
MXLTN
это видимо неправильно
Anton
Да
Anton
Надо локальную дату привязать к чекбокссу
Anton
И потом эмитить в родитель изменения
Anton
У вас задача стоит сообщить родителю данные из чекбокса - это делается через $emit
Anton
то есть надо с помощью события данные отдать
Anton
paren -> child = props
child -> parent = event
Anton
Я ниже про это написал. Просто если нужна будет v-model, придется юзать data скорее всего
pinelover
подскажите плс есть ли хорошие темплейnы/бойлерплейты сделать на vue сайт портфолио себе? главное, чтобы разделы были разные
Anton
В vue-awesome полно всяких
MXLTN
я не хочу разбивать логику между компоненом и родителем
MXLTN
хочу что бы компонент сам отправил все на сревак и обновил статус свой
MXLTN
в таком случа отправлять родителю не нужно
MXLTN
можно просто сделать axios.patch внутри компонента
MXLTN
но как обновить состояние конпонента если нельзя трогать props ?
Stanislav
MXLTN
или в целом компонент не может обновлять свое состояния
MXLTN
Stanislav
собственноей
Если компонент сам отправляет свои данные, то зачем ему пропсы?)
Он внутри себя все хранит.
MXLTN
в целом задача простая - есть массив объектов на входе, объект с атрибутом status: treu/false
нужно нарисовать список объектов с чекбоксом по status, если я нажимаю на чекбокс - слать на серверт patch по объектуу и обновлять его состояния не сервере ну и на фронте соответственн
MXLTN
так вот родитель у меня получает собственно массив
MXLTN
и потом отрисовывает компонент для каждого объекта передавая пропсы
MXLTN
когда я нажимаю на чекбокс - компонент ловит это событие и шлет на сервер патч для обновления состояни
MXLTN
вопрос - как обновить атрибут компонента на новое состояния если трогать пропсы нельзя?
pinelover
Vladyslav
В общем, такой вопрос, для свежего холивара.
Запросы к API выполнять в экшенах Vuex. True - false?
Tom
как хочешь)
Vladyslav
Добавлю что конечно все API будут в сервисе, но их вызов будет в экшенах Vuex
MXLTN
тобишь в компоненте?
Vladyslav
Нет, в самом экшене vuex
Tom
Vladyslav
Например, имеем компонет User в vuex.
У него есть действие LoginIn и запрос к авторизации будет вызван в этом действии.
А мутация будет конечно вызвана лишь в случаи если ответ от сервера - ок
Tom
более чистые компоненты
Vladyslav
Тогда все управление данными остается в vuex
Vladyslav
и Vuex не будет просто хранилищем, а уже сервисом работы с данными
Stanislav
Serge
Не пойму нахрена вы все в vuex тащите
MXLTN
Tom
всмысле нельзя?
Vladyslav
@c01nd01r в моем приложении, есть еще множество релаций юзера которые очень удобно и логично вынести как отельные компонент vuex. 😊
Tom
передавай пропсом обновленное значение и все
Tom
🙂
MXLTN
ну нельзя менять пропсы изнутри компонента вроде
Vladyslav
@obsly почему?))
Tom
тебе наверх данные передать нужно?
MXLTN
да не очень
Tom
обновить пропсы для родительского компонента, или для какого-то компонента не находящегося в иерархии parent -> child?
Stanislav
MXLTN
компоненту внутри себя отправить запрос на сервак и обновить свое же состояние по результтау
Vladyslav
@c01nd01r разные компоненты меняют эти данные в разных местах приложения.
MXLTN
но изначально данные он принимает от родителя через пропсы
Tom
все просто
Tom
получил через пропс, сделал копию в data
Stanislav
Tom
потом уже обновляешь дата
MXLTN
волшебно) то есть это норм метод?
Tom
копию можешь сделать через JSON.parse stringify