@vuejs_ru

Страница 2073 из 3900
Т.А
16.02.2018
09:42:56
да, это понятно, что он молодой еще, но как думаете, он же ничем не хуже реакта да?

Denis
16.02.2018
09:43:01
Alex
16.02.2018
09:43:21
Arstanbek
16.02.2018
09:43:27
Google
freekzy
16.02.2018
09:43:54
https://github.com/vuex-orm/vuex-orm Жесть какая...

Denis
16.02.2018
09:44:19
Подскажите. Читаю данные из store. State store: state: { userState: { isAuth: false, isAdmin: false } } getter: authStatus: (state) => state.userState.isAuth Получаю из компонента this.$store.getters.authStatus В store значение authStatus true. Но получаю false...

Vlad
16.02.2018
09:44:45
Arstanbek
16.02.2018
09:44:54
https://codepen.io/anon/pen/RQjyxa
Он говорит, что у него еще чекбоксы есть в ячейках. Значит, еще проверку сделать на то, что внутр ент чилдов

Phil
16.02.2018
09:44:56
Ну за vue Laravel уже хорошо) да и много китайский компаний)) двигается потихоньку)

Van
16.02.2018
09:44:59
Arstanbek
16.02.2018
09:45:28
аа, ну тогда да )

Denis
16.02.2018
09:49:15
Вопрос гуру Vue. Как вы организовываете работу с формами? Делаете из полей ввода компоненты, а потом снаружи обмазываете все ивентами или обходитесь без компонентов и просто данные в модель собираете?

Denis
16.02.2018
09:50:10
_self.$store.commit('changeUserState', true);

Denis
16.02.2018
09:50:24
Спрашиваю, потому что никак не могу решить, как грамотнее валидацию прикрутить.

Кирилл
16.02.2018
09:50:25
Во вью однонаправленный поток данных
Почему? Меняешь данные скажем в форме, меняются данные в моделе и обратно

Google
Van
16.02.2018
09:50:33
_self.$store.commit('changeUserState', true);
Это вызов, я не сама мутация.

Denis
16.02.2018
09:50:44
Denis
16.02.2018
09:50:44
changeUserState(state, status) { state.userState.isAuth = status }

Denis
16.02.2018
09:51:15
+

Van
16.02.2018
09:51:17
changeUserState(state, status) { state.userState.isAuth = status }
import Vue from 'vue' Vue.set(state.userState, 'isAuth', true)

+
v-bind чайлдам, $emit родителям!

v-model это сахарок

ну или .sync для бинда

Denis
16.02.2018
09:52:17
Конечно.

Denis
16.02.2018
09:52:34
в чем разница?

import Vue from 'vue' Vue.set(state.userState, 'isAuth', true)

freekzy
16.02.2018
09:52:53
import Vue from 'vue' Vue.set(state.userState, 'isAuth', true)
Здесь напрашивается на вынесение в модуль.

Van
16.02.2018
09:52:53
import Vue from 'vue' Vue.set(state.userState, 'isAuth', true)
https://vuejs.org/v2/guide/reactivity.html#Change-Detection-Caveats

Denis
16.02.2018
09:52:57
Однонаправленный поток подразумевает невозможность в потомке напрямую изменить тот пропс, который ему сверху от родителя прилетает

Van
16.02.2018
09:53:08
в чем разница?
вот тут можно почитать почему

Denis
16.02.2018
09:53:19
Благодарю)

Alex
16.02.2018
09:53:32
Google
Van
16.02.2018
09:54:30
Его меняет только родитель

Denis
16.02.2018
09:54:31
Так вы его и не можете поменять
Так поэтому и не могу)))

Почитайте ещё раз про работу с формами)
Можете ответить на вопрос, который я выше про формы задавал?

Alex
16.02.2018
09:55:11
Какой

Кирилл
16.02.2018
09:55:11
Denis
16.02.2018
09:55:22
Какой
Вопрос гуру Vue. Как вы организовываете работу с формами? Делаете из полей ввода компоненты, а потом снаружи обмазываете все ивентами или обходитесь без компонентов и просто данные в модель собираете?

Alex
16.02.2018
09:55:57
Не делаем из полей компоненты. Набор полей делаем компонентом

Denis
16.02.2018
09:56:18
Не делаем из полей компоненты. Набор полей делаем компонентом
То есть, по сути, форма - это отдельный компонент?

Alex
16.02.2018
09:56:39
Чаще всего да

Denis
16.02.2018
09:56:43
Или ваш компонент генерирует набор полей из присланных данных?

Кирилл
16.02.2018
09:56:50
То есть, по сути, форма - это отдельный компонент?
форма может из нескольких компонентов состоять, которые включается при разных условиях

Stanislav
16.02.2018
09:56:59
интересно почему вакансий на вью мало. чем он хуже реакта? то, что он лучше ангуляра это точно
Потому что после любой другой фигни, он относительно прост. Вакансии могут закрываться внутри компании, когда вчера чувак писал на ангуляре, прочитал доку и может писать на вью.

Alex
16.02.2018
09:57:32
freekzy
16.02.2018
09:57:59
Wat?
Зачем выделять состояние пользователя в объект в рут-сторе, если по логике, всю работу с текущей сессией надо вынести в отдельный модуль. И Vue.set не понадобится, и логика чище будет.

Denis
16.02.2018
09:58:48
Для этого vue-form-generator используем
А как он с валидаторами работает? У меня вечная проблема - реализовать нормальную валидацию. Я завернул инпут в отдельный компонент, но столкнулся с кучей проблем (например, сложности с инициализацией DatePicker на этом катомном компоненте)

Кирилл
16.02.2018
09:59:11
datepicker проще свой реализовать

Google
Alex
16.02.2018
09:59:13
Но у него есть вроде варианты валидации

Кирилл
16.02.2018
09:59:40
потому что Jquery datepicker это боль

Denis
16.02.2018
09:59:44
Кирилл
16.02.2018
09:59:47
Да

Denis
16.02.2018
09:59:52
потому что Jquery datepicker это боль
А никто не говорит про jquery

datepicker - это общее название для компонента, позволяющего выбрать дату

Van
16.02.2018
10:00:12
Alex
16.02.2018
10:01:02
import Vue from 'vue' Vue.set(state.userState, 'isAuth', true)
Вы напрямую стейт меняете так

Van
16.02.2018
10:01:44
Vue.set, по хорошему, надо избегать.
Я согласен. Но в доках написано что можно использовать, и иногда приходится

freekzy
16.02.2018
10:02:10
Я согласен. Но в доках написано что можно использовать, и иногда приходится
Да, приходится. Но в текущем контексте это "не добрый" совет.

Alexander
16.02.2018
10:02:11
в реакте используют паттерны проектирования, там удобнее применять декоратор, чем во вью, архитектурнее реакт мощнее, потом что он на функциях работает, а на вью можно быстро сделать мощный UI с минимум затрат, только вот будет ли легче его потом поддерживать или нет?

Van
16.02.2018
10:02:23
Вы напрямую стейт меняете так
Из мутации вы в любом случае меняете стейт, нет?

Да, приходится. Но в текущем контексте это "не добрый" совет.
Какой вопрос, такой ответ. Вроде как не совета спрашивали? ?

Alex
16.02.2018
10:02:47
Вот только в мутации и меняем

Van
16.02.2018
10:03:41
Вот только в мутации и меняем
Таки я и написал на вопрос, почему не обновляется стейт через геттер в объекте, что нужно в мутации изменить присваевание по ссылке на Vue.set

Alexander
16.02.2018
10:03:44
Никтож не говорит, что реакт плох. Плох - jsx
ну jsx да, отстой по сравнению с шаблонами

freekzy
16.02.2018
10:04:23
Шаблоны аутентичнее. JSX - зло.

Google
Alex
16.02.2018
10:04:49
Шаблоны аутентичнее. JSX - зло.
Что то что это к жс приводится

Анатолий
16.02.2018
10:04:56
Между прочим Vue и JSX позволяет для особо альтернативных :)

freekzy
16.02.2018
10:05:13
Что то что это к жс приводится
Мешать мух и котлеты никогда хорошим тоном не было.

Анатолий
16.02.2018
10:05:17
Это видимо чтобы всех устроило :)

Alex
16.02.2018
10:06:11
Котлеты это жс. Шаблоны и жсх это мухи. Для каждого свои

Van
16.02.2018
10:06:41
Не знаю чем вам jsx не угодил. И в шаблонах, и в jsx есть плюсы и минусы

freekzy
16.02.2018
10:06:46
Котлеты это жс. Шаблоны и жсх это мухи. Для каждого свои
Шаблоны стары как мир. JSX - адская дичь.

Анатолий
16.02.2018
10:06:54
Котлеты это жс. Шаблоны и жсх это мухи. Для каждого свои
Не совсем. Жс это котлеты. Разметка это компот.

JSX - это... :)

Arstanbek
16.02.2018
10:07:11
и по классике жанра, сейчас должны пойти говностикеры

Alex
16.02.2018
10:07:26
Шаблоны стары как мир. JSX - адская дичь.
Они считают что шаблоны причины всех бед. Каждый по своему воспринимает

Alexander
16.02.2018
10:07:29
во вью не все можно реализовать на шаблонах, поэтому многие ui библиотеки написаны с render(), на реакте такой проблемы нет, ты пишешь на jsx все

Alex
16.02.2018
10:08:00
Alexander
16.02.2018
10:08:08
Анатолий
16.02.2018
10:08:51
Мнения разделились на староверов, впитавших в себя MVC, и прогрессивных, готовых что угодно с чем угодно мешать :)

Ну а серьёзно - на разделение кода по компонентам и по предназначению

Alexander
16.02.2018
10:09:52
MVC плохой паттерн, неудобный, никто никогда и не пишет на чистом MVC

Alexander
16.02.2018
10:10:41
Можно кейс в студию?
какой тебе кейс?

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