
Vitalii
04.09.2018
11:39:50
и как я должен понять, что голосование что-то докажет по вопросу?

Arsen
04.09.2018
11:40:27
Да мне просто самому интересно, кто как думает

Nikita
04.09.2018
11:40:43
Где 3 вариант "чистый код"?

ivan
04.09.2018
11:43:01
Подскажите, как правильно получить доступ внутри vuex к самому себе? использую nuxt, пробовал Vue.store, this.$store, this.$_nuxt.store, уже начал чувствовать себя обезьяной с гранатой

Google

?
04.09.2018
11:44:08
Вариант с computed: а) не требует дополнительных вычислительных ресурсов б) более декларативный и читаемый в) лучше масштабируется при увеличении сложности задачи

Yaroslav
04.09.2018
11:44:32

Karimov
04.09.2018
11:45:26
Привет всем, может кто сталкивался или подскажет. Есть ли способ автоматизирвоанно оптимизировать SCSS со всеми вложенностями, опираясь на шаблон, или html-документ? Я имею ввиду есть куча селекторов, вложенные не вложенные, перепутанные , каша из селекторов, вобщем. Нужно бы превратить это в стройный код, желательно чтобы был scss вложен

Arsen
04.09.2018
11:45:27
0. Если потом окажется, что значение может изменитья - тебе придётся переделывать, в случае с computed - нет
1. Если значение генерируется на основе пропсов и компонент будет переиспользоваться с другими значениями пропсов - значение останется сгенерированным на основе старых пропсов
2. Если сунуть это значение в data, то это значит, что оно может быть изменено чем угодно, конечно никто этого делать не будет, но я считаю, что лучше не допускать того, чего быть не должно

Дмитрий
04.09.2018
11:48:02
C точки зрения банальной логики - операция выполняется один раз при создании компонента. Почему не created? Более декларативно, чем лезть в computed, смотреть не изменяются ли значения и т.д

Arsen
04.09.2018
11:48:38

?
04.09.2018
11:49:12
Computed вычислится один раз точно так же
вычисления данных которые должны быть сохранены в состоянии внутри created - императивный код

Arsen
04.09.2018
11:50:17
Согласен, если надо значение, сгенерированное на основе только первоначальных данных, а последующее изменение не должно влиять на него - тогда нужен created или что-то подобное

Vitalii
04.09.2018
11:50:34
0. Если потом окажется, что значение может изменитья - тебе придётся переделывать, в случае с computed - нет
1. Если значение генерируется на основе пропсов и компонент будет переиспользоваться с другими значениями пропсов - значение останется сгенерированным на основе старых пропсов
2. Если сунуть это значение в data, то это значит, что оно может быть изменено чем угодно, конечно никто этого делать не будет, но я считаю, что лучше не допускать того, чего быть не должно
0 Если значение и изменится, то computed придется также менять, хотя бы на то значение, которое там забито
1 Это если с пропсами (не проверял, поэтому не сужу), но вот если использовать получаемый state?
2 А в computed используется props или data - не может быть изменен чем угодно?)

Arsen
04.09.2018
11:50:44
Например сохранение исходного состояния формы для последующей возможности сброса

Дмитрий
04.09.2018
11:52:57
Пункты 1 и 2 логично, но вот 0 - сомнительный. Я конечно понимаю, что хороший программист видит развитие кода и превидит возможные проблемы, с ошибками, но для меня этот пункт как вангоориентированное программирование, пишем код с оглядкой на вещи которые не произойдут
Хотя закон мерфи никто не отменял, и код обязательно придется переписать

Google

Arsen
04.09.2018
11:54:17

Atkisai
04.09.2018
11:59:25


Vitalii
04.09.2018
12:03:03
0 чё?
1 ...
2 Оно будет сгенерировано на основе других данных, и всякие проверки на валидность этих данных можно сделать в computed, а если это поле в data, то допустим при создании компонента сгенерируется значение 'https://google.com/r/blabla', но я могу его помеменять на 'kekCheburek'
0 Что в вашем понимании "значение может изменится"? я предполагаю что само значение identity.login поменяется, не понимаю - что придется переделывать в created? или вы предполагаете, что в каком-то методе поменяется значение? даже если так, значит так надо по логике вещей, иначе нахер менять значение)
1 бессмысленно обсуждать
2 Согласен, что возвращаемое значение как целое не поменять, однако остается возможность менять то, что складывается для return, тобишь я могу поменять 'https://google.com/r/blabla' на 'https://google.com/r/hertamplaval'
я во втором пункте наверное использовал взаимоисключающие параграфы, целое значение можно поменять, но не первую часть)


Alex
04.09.2018
12:05:04
Здравствуйте, подскажите пожалуйста:
как передать @click.stop="drawer = !drawer" из А в Б ?
компонент А (гамбургер)
компонент Б (меню)

Vitalii
04.09.2018
12:05:29

Alex
04.09.2018
12:06:27
props или vuex
как правильно через props ?
props: {
source: String
}
так попробовал - не работает


Arsen
04.09.2018
12:06:34
0 Что в вашем понимании "значение может изменится"? я предполагаю что само значение identity.login поменяется, не понимаю - что придется переделывать в created? или вы предполагаете, что в каком-то методе поменяется значение? даже если так, значит так надо по логике вещей, иначе нахер менять значение)
1 бессмысленно обсуждать
2 Согласен, что возвращаемое значение как целое не поменять, однако остается возможность менять то, что складывается для return, тобишь я могу поменять 'https://google.com/r/blabla' на 'https://google.com/r/hertamplaval'
0. Если окажется, что identity.login будет меняться во время работы приложения, из created придётся перенести в computed
2. Варианты, которые получатся в случае с computed по сути являются допустимыми, ибо это всё ещё ссылка на аккаунт в гугле, пусть даже не существующий, а если через created - там даже ссылкой не пахнет)
Карочи я пшол

Ilya
04.09.2018
12:07:55
Кто то работа c Vue + Electron?

Vitalii
04.09.2018
12:08:31

Arsen
04.09.2018
12:08:52
Пропс и vuex тут никаким боком не подходят

Alex
04.09.2018
12:09:40

Stanislav
04.09.2018
12:09:51
Давайте поиграем

Arsen
04.09.2018
12:09:59
Зовите вангу

Vitalii
04.09.2018
12:10:15
drawer это метод?

Александр
04.09.2018
12:10:16
я здесь
кто звал

Google

Alex
04.09.2018
12:10:34
drawer это метод?
<v-toolbar-side-icon @click.stop="drawer = !drawer"></v-toolbar-side-icon>

Arsen
04.09.2018
12:10:36

Александр
04.09.2018
12:10:43
вижу...

Arsen
04.09.2018
12:10:53

Александр
04.09.2018
12:10:53
вижу... жопу полную в коде...

Alex
04.09.2018
12:11:31

Александр
04.09.2018
12:11:51
С идет на ум... его звать Сережа?

Stanislav
04.09.2018
12:11:55

Arsen
04.09.2018
12:12:08
Я не понял чё куда надо передавать

Alex
04.09.2018
12:12:09

Stanislav
04.09.2018
12:13:26

Arsen
04.09.2018
12:13:57
Кнопка в родительском компоненте или в соседнем?

John
04.09.2018
12:14:33
vue все что не пропс оставляет как атрибут элемента. Можно как-то это обойти?

Stanislav
04.09.2018
12:14:33
Там опция у компонента есть

Alex
04.09.2018
12:16:31

Stanislav
04.09.2018
12:16:48

Alex
04.09.2018
12:18:08
toolbar и sidebar были в одном компоненте, я их разделил на 2 отдельных, после этого меню перестало скрываться, как реализовать закрытие и открытие меню по клику на гамбургер ?

Google

John
04.09.2018
12:19:12

Arsen
04.09.2018
12:19:55
в соседнем
Почитай про модификатор .sync для пропсов
Или про v-model для пользовательских компонентов

Alex
04.09.2018
12:21:07

Stanislav
04.09.2018
12:21:34

Arsen
04.09.2018
12:21:39
Ну или всё-таки можно хранить значение в vuex

Stanislav
04.09.2018
12:22:24

Arsen
04.09.2018
12:22:56
Согласен, только надо передавать значение снизу вверх, для чего нужен .sync

Admin
ERROR: S client not available

Arsen
04.09.2018
12:23:00
Ну или просто событиями

Андрей
04.09.2018
12:24:12
Помогите с реактивностью. В компонент я передаю массив, который будет обрабатываться в этом компоненте. Так вот, операции с массивом только добавить/удалить элемент. Меняется массив реактивно(в devtools сразу данные меняются) но не рендерится не реактивно, через раз.

Егор
04.09.2018
12:24:58

Ikbol
04.09.2018
12:25:10

Егор
04.09.2018
12:25:14
с ним все должно рендериться на ура
товарищи, а есть какие-то общепопулярные компоненты чтобы почти коробкой запилить аутентификацию на вью с бэкендом на фласке/джанге?

Андрей
04.09.2018
12:30:31
<ImageUpload
v-model="cooperative.photos"
/>
_______________________________________
<div
v-for="(photo, photoIndex) in value"
:key="photoIndex"
class="draggble-element"
>
....
props: {
value: {
type: Array,
required: true
}
}
...
this.value.push({path: null, data: event.target.result})
Примерно такая схема
щас найду куда онлайн код вставить можно

Егор
04.09.2018
12:32:39

Ikbol
04.09.2018
12:34:18

Егор
04.09.2018
12:34:53

Google

Ikbol
04.09.2018
12:35:09
в личку скину

Егор
04.09.2018
12:35:16
спс


Mike
04.09.2018
12:35:42
Всем добрый день!
Ребят помогите разобраться с головоломкой. Пишу селект, все получается, все круто, но есть один момент:
селект должен работать так: при клике на поле (input) октрывается список, при клике на опцию выбирается значение и список закрывается. Так вот когда я вставил кнопку очищения то появился забавный баг, вообще не предсказуемый...
Есть два v-if="value && !isOpen" в .app-select-search, у span и у button, из за них после выбора значения в селекте, список при фокусе на input больше не появляется, к тому же добавляется еще одно событие "close" (можете посмотреть в консоле)
Забавно то, что если у одного из span/button изменить v-if на v-show, то все работает отлично, все повторно открывается.
Если перенести input после button тоже работает, багов нет.
Я думал сначала, что дело в фокусах, так как из за специфики есть фокус и на инпуте и на корневом элементе. Но после того, как при перемещении инпута после кнопки очищения или наоборот, все работает, я просто вообще перестаю логически мыслить...
Помогите разобраться пожалуйста.
https://codesandbox.io/s/7ww75nn171


Michael
04.09.2018
12:36:35
Всем добрый день!
Ребят помогите разобраться с головоломкой. Пишу селект, все получается, все круто, но есть один момент:
селект должен работать так: при клике на поле (input) октрывается список, при клике на опцию выбирается значение и список закрывается. Так вот когда я вставил кнопку очищения то появился забавный баг, вообще не предсказуемый...
Есть два v-if="value && !isOpen" в .app-select-search, у span и у button, из за них после выбора значения в селекте, список при фокусе на input больше не появляется, к тому же добавляется еще одно событие "close" (можете посмотреть в консоле)
Забавно то, что если у одного из span/button изменить v-if на v-show, то все работает отлично, все повторно открывается.
Если перенести input после button тоже работает, багов нет.
Я думал сначала, что дело в фокусах, так как из за специфики есть фокус и на инпуте и на корневом элементе. Но после того, как при перемещении инпута после кнопки очищения или наоборот, все работает, я просто вообще перестаю логически мыслить...
Помогите разобраться пожалуйста.
https://codesandbox.io/s/7ww75nn171
нюанс.


John
04.09.2018
12:44:34
Интрига

Mike
04.09.2018
12:45:33
Интрига
вот то, что у меня в коде, там интрига)


Дмитрий
04.09.2018
12:57:28
Всем добрый день!
Ребят помогите разобраться с головоломкой. Пишу селект, все получается, все круто, но есть один момент:
селект должен работать так: при клике на поле (input) октрывается список, при клике на опцию выбирается значение и список закрывается. Так вот когда я вставил кнопку очищения то появился забавный баг, вообще не предсказуемый...
Есть два v-if="value && !isOpen" в .app-select-search, у span и у button, из за них после выбора значения в селекте, список при фокусе на input больше не появляется, к тому же добавляется еще одно событие "close" (можете посмотреть в консоле)
Забавно то, что если у одного из span/button изменить v-if на v-show, то все работает отлично, все повторно открывается.
Если перенести input после button тоже работает, багов нет.
Я думал сначала, что дело в фокусах, так как из за специфики есть фокус и на инпуте и на корневом элементе. Но после того, как при перемещении инпута после кнопки очищения или наоборот, все работает, я просто вообще перестаю логически мыслить...
Помогите разобраться пожалуйста.
https://codesandbox.io/s/7ww75nn171
Почему-то кажется, что дело все в том, что эвент всплывает в label, а так как инпут внутри label происходит рефокус в инпут, и дальше дебри какие-то )
хотя нет, даже если не в label обернуть все равно


Mike
04.09.2018
13:00:06
хотя да, событие "close" еще одно появляется, но у меня просто нет слов по этому поводу уже... по этому и прошу помочь

Alexey
04.09.2018
13:01:55
всем привет! как в nuxt по уму логировать ошибки? именно писать в лог?
что бы когда app.context.error писалось в лог... ну или просто был глобальный логгер и ему скармливать ошибку.. а юзеру показывать то что хотим при этом..

John
04.09.2018
13:03:08
Дело в том что v-if перестраивает dom и "физически" удаляет span при фокусе на input
поэтому теряется фокус
v-show делает span'у display: none и ничего никуда не перестраивается

Дмитрий
04.09.2018
13:04:12
Начнем с того, вешать фокус на див вообще корректно? нет же вроде

Mike
04.09.2018
13:04:36

Дмитрий
04.09.2018
13:04:44
на див, опечатался)

John
04.09.2018
13:04:56