@vuejs_ru

Страница 3307 из 3900
Wordpost
24.07.2018
05:41:26
Ребята, имею вот такой код: http://joxi.ru/nAyo8y3TYQEyZm Полуючаю вот такую ошибку: http://joxi.ru/Dr8jEqei4P7kZ2 Как правильно ее решить?

Ошибки ссыпятся, когда начинаю вводить символы в поле

Aslan
24.07.2018
05:43:53
Profile пропсой прокидываешь?

Wordpost
24.07.2018
05:44:17
Ага

Google
Askar
24.07.2018
05:44:53
ну там наверное нужно мутациями стор править, а не так?

Aslan
24.07.2018
05:45:12
В js все построено на ссылках, так что сделав user = profile ты указал ссылку на profile

Wordpost
24.07.2018
05:45:12
Это компонент, как я понял со стором работают страницы, а по компонентам прокидываешь пропсами

Aslan
24.07.2018
05:45:28
Меняя user меняешь profile

Wordpost
24.07.2018
05:45:43
А как правильно мутацию сделать?

Aslan
24.07.2018
05:46:13
Событием

Алексей
24.07.2018
05:46:33
Меняя user меняешь profile
не вижу я чтобы он назначал профайлу юзера, обратно - да. Покажи лучше поле, в которое вводишь. Если там прописано что-то из серии v-model - дело может быть в этом

Aslan
24.07.2018
05:47:11
Прошли событие родителю о том что данные изменились. В родителе обрабатывай. Записывай в стор через мутацию

Wordpost
24.07.2018
05:47:17
user.name.first_name

v-model

Алексей
24.07.2018
05:48:24
user.name.first_name
ну да, юзай вместо этого :value и v-on:input v-on:change

https://vuex.vuejs.org/guide/forms.html

Google
Askar
24.07.2018
05:49:55


https://vuex.vuejs.org/guide/forms.html#two-way-computed-property

Wordpost
24.07.2018
05:50:57
Ок, спасибо!

Алексей
24.07.2018
05:51:53
В created он это делает
т.е. ты хочешь сказать что если я сделаю в created: this->user1 = this.profile , this->user2 = this.profile, this->user1 = 'кошка', то user2 станет тоже кошкой? какая-то странная логика, вывернутая

Wordpost
24.07.2018
06:00:28
А как метод строить, если поля вот такие: http://joxi.ru/YmEGDwet0DRwRA

Furrya
24.07.2018
06:00:57
mapActions же придуман диспатчить в стор через сеттер, ну это такое себе сказать вам, что code review такое не пройдет? getters/setters не для этого) Вы думаете что делаете в удобно в одно, на самом деле усложняете другое

Askar
24.07.2018
06:09:43
mapActions же придуман диспатчить в стор через сеттер, ну это такое себе сказать вам, что code review такое не пройдет? getters/setters не для этого) Вы думаете что делаете в удобно в одно, на самом деле усложняете другое
ну я по памяти как было в доках написал Если геттерс/сеттерс не для этого, то вы предлагаете на каждый инпут вешать bind и change? Как по вашему правильно поступить?

Furrya
24.07.2018
06:20:24
ну я по памяти как было в доках написал Если геттерс/сеттерс не для этого, то вы предлагаете на каждый инпут вешать bind и change? Как по вашему правильно поступить?
Ок, пусть меня поправят деды тогда) "An alternative approach is using a two-way computed property with a setter" альтернатива не указание (то есть если есть n путей, не значит хороши все) есть v-model диспатчить данные в стор правильнее явно, по клику save и тд зачем вам дистпатч на рендере компонета? push в массив с инпутами, ререндер, дергаем дистпатч, зачем?

Askar
24.07.2018
06:22:22
Вот это новости, буду иметь во внимании, спасибо за инфу

Wordpost
24.07.2018
06:22:45
Так как диспатчить, если ошибки сыпятся при вводе символов?

Их нужно сначала куда то записать, а потом уже изменять в самом сторе?

Alex
24.07.2018
06:24:17
Wordpost
24.07.2018
06:24:36
http://joxi.ru/DrlRVdPivZldw2

Alex
24.07.2018
06:25:07
Ну прям написано же, не мутировать стейт напрямую

Wordpost
24.07.2018
06:25:38
http://joxi.ru/brRG6wOtJn980m

Как правильно оформить?

Alex
24.07.2018
06:26:06
Как правильно оформить?
Лучше сначала почитайте что такое в-модел

Furrya
24.07.2018
06:26:21
Ты state биндишь в v-model куда то? xD

Wordpost
24.07.2018
06:29:08
Ребята, имею вот такой код: http://joxi.ru/nAyo8y3TYQEyZm Полуючаю вот такую ошибку: http://joxi.ru/Dr8jEqei4P7kZ2 Как правильно ее решить?

Google
Wordpost
24.07.2018
06:29:08
Ошибки ссыпятся, когда начинаю вводить символы в поле

Vlad
24.07.2018
06:29:49
Так ведь написано

Меняешь стору

Вне мутаций

Vlad
24.07.2018
06:31:13
Как вы вообще до вьюкса дошли, если консоль не можете осилить?

Wordpost
24.07.2018
06:31:28
Как правильно оформить мутацию, если объект имеет вид: http://joxi.ru/GrqxgR6UQYZYDA

Vlad
24.07.2018
06:32:27
+

Но тебе в общем

Wordpost
24.07.2018
06:32:51
А сейчас понятно?)

Vlad
24.07.2018
06:32:51
Верни копию объекта

Vlad
24.07.2018
06:32:58
Которую менять можно

В геттере типа такого json.parse(json.stringify(your-obj))

И его меняй. А по сохранению кидай в мутацию, чтобы сохранить поля

Владимир
24.07.2018
06:34:35
Верни копию объекта
а почему бы просо не написаь нормальную мутацию и менять в ней оригинальный объект?

Furrya
24.07.2018
06:34:44
Как правильно оформить мутацию, если объект имеет вид: http://joxi.ru/GrqxgR6UQYZYDA
https://jsfiddle.net/furryablack/d4w7t3jL/ я даже не знаю попробую угадать может тебе просто пример нужен, чтобы просто ошибку найти в коде

Vlad
24.07.2018
06:35:14
Furrya
24.07.2018
06:36:10
а почему бы просо не написаь нормальную мутацию и менять в ней оригинальный объект?
так и должно быть, изменения нужно же как то закоммитить в стэйт тут без мутации никак)))

Google
Владимир
24.07.2018
06:39:07
если вложенность небльшая у объекта, можно написать простейшую мутацию: пример из рабочего проекта: UPDATE_CUSTOMER_DATA(state, customerData) { Object.entries(customerData).forEach(([key, value]) => Vue.set(state.customer, key, value)); },

CIL
24.07.2018
06:39:29
#spam

Admin
ERROR: S client not available

Wordpost
24.07.2018
06:41:22
Всем спасибо, все понял)

Sergey
24.07.2018
06:41:54
Товарищи, посоветуйте, пож, какую-то годную книгу по вую. Что можете сказать о vuejs: up and running?

Furrya
24.07.2018
06:43:10
Sergey
24.07.2018
06:45:14
Да доки хороши, когда уже имеешь представление, как правильно писать) Мне бы получить представление о том, как писать православнее

Владимир
24.07.2018
06:45:53
книг не знаю а видео вот: https://vuemastery.com/vueconf

Dmitrij
24.07.2018
06:46:43
Да доки хороши, когда уже имеешь представление, как правильно писать) Мне бы получить представление о том, как писать православнее
можешь уроки посмотреть, вроде бы тоже разжовывают как младенцу - https://www.youtube.com/watch?v=diPpV20TOUs&list=PLLvTAhHe8AYCf1RDc2l2ZWriPfMf-yZel

Sergey
24.07.2018
06:47:05
О, спасибо

Dmitrij
24.07.2018
06:47:15
НО...

Sergey
24.07.2018
06:47:30
Опыт и исходники того что написано для vue/на vue))
Да в том и дело, что после того, как я попал в этот чат, я понял, что писал через задницу)

Dmitrij
24.07.2018
06:47:30
документация - это основной источник информации!

Да в том и дело, что после того, как я попал в этот чат, я понял, что писал через задницу)
нет написания через задницу, есть разный опыт работы с кодом

Владимир
24.07.2018
06:48:33
https://dev.tube/ еще можно вот тут посмотреть

Dmitrij
24.07.2018
06:49:26
каждый разраб это художник и рисует по-своему, главное, что в итоге у одних картина, а у других... детская картинка ))

Sergey
24.07.2018
06:49:37
Философ)

?? Denis
24.07.2018
06:50:02
я кажеца https://vuejs.org/v2/guide/components-registration.html сломалъ

Aslan
24.07.2018
06:52:01
т.е. ты хочешь сказать что если я сделаю в created: this->user1 = this.profile , this->user2 = this.profile, this->user1 = 'кошка', то user2 станет тоже кошкой? какая-то странная логика, вывернутая
Логика самая обычная, в описаном тобой случае только user1 будет кошкой, так как ты присвоил строку. Если же будешь менять свойста объекта, то оно будет меняться у всех у кого есть ссылка

Google
Aslan
24.07.2018
06:53:02
this->user1 = 'кошка' ты написал так

Алексей
24.07.2018
06:53:17
я про первое

это грубый пример

this->user1.name = кошка пусть будет

я сейчас не говорю что ты неправ, я в JS плаваю и хочу для себя поведение зафиксировать, в других моих языках присваивание по ссылке делается иначе

Aslan
24.07.2018
06:54:11
если будешь менять this->user1.name , то будет меняться у всех

Дмитрий
24.07.2018
06:54:26
Всем привет! Подскажите, может кто знает, можно ли на лету генерить computed свойства? Пробовал сделать таким образом - ругется на то, что геттеры is missing <script> import { mapGetters, mapActions } from 'vuex' let arr = [ { name: 'Имя' }, { surname: 'Фамилия' }, { patronymic: 'Отчество' }, { date: 'Дата выдачи' }, { series: 'Серия' }, { number: 'Номер' }, { whom: 'Кем выдан' }, { birthday: 'Дата роджения' }, { sex: 'Пол' } ] const generateComputedProps = (array, getter, setter) => { let items = array.map(key => { return { [Object.keys(key)]: { get () { return getter[Object.keys(key)] }, set (value) { setter({ data: { [Object.keys(key)]: value } }) } } } }) console.log(items) return items } export default { name: 'passport-edit-form', computed: { ...mapGetters('app', [ 'getPassportEntities', 'getPassportShowEditData' ]), ...generateComputedProps(arr, this.getPassportEntities, this.handlerUpdatePassportEntities) }, methods: { ...mapActions('app', [ 'handlerUpdatePassportEntities' ]) } } </script>

Пропихивал деструктуризацией в computed

Алексей
24.07.2018
06:55:29
если будешь менять this->user1.name , то будет меняться у всех
мда, весело. Мне это могло где-то сильно боком вылезти, клонирование в JS надо делать явно, видимо

DimenSi
24.07.2018
07:14:49
мда, весело. Мне это могло где-то сильно боком вылезти, клонирование в JS надо делать явно, видимо
Для меня в пхп было необычно, что нужно наоборот явно указывать, что передаю ссылку на объект, а не сам объект.

Хотя после еще нескольких языков, стало понятно, что это только js такой.

Страница 3307 из 3900