@vuejs_ru

Страница 136 из 3900
Emil
07.02.2017
13:07:28
если кому-то эта тема интересна, можете изучить https://github.com/AleshaOleg/holy-grail-markup

сам собираюсь сейчас так сделать

Stanislav
07.02.2017
13:07:44
это не мешает организовывать компонеты в терминах БЭМ

Ilia
07.02.2017
13:07:52
он сказал, что использует только нейминг
я сейчас активно пытаюсь понять как совместить лучшие практики Vue и БЭМ

Google
Emil
07.02.2017
13:08:35
я активно юзал БЭМ при работы с Angular 1, сейчас решил, что в нем нет необходимости, хотя стандартизации, да, не хватает

Stanislav
07.02.2017
13:08:57
@bosenok используя CSS-модули?

Ilia
07.02.2017
13:09:07
мне например совсем не нравится шаблонизация в БЭМ. Ну не могу я писать HTML в виде JSON

Emil
07.02.2017
13:09:11
возможно. как раз собираюсь почитать о них

никогда раньше не юзал

Stanislav
07.02.2017
13:09:53
@ofcourseican ну по сути все по БЭМ-у, просто за тебя все классы проставляются

то есть, можно сказать, что это слой абстракции над БЭМ

Ilia
07.02.2017
13:10:24
@bosenok используя CSS-модули?
я честно говоря не знаю что есть CSS модули...

Emil
07.02.2017
13:10:32
сами?:) интересно девки пляшут, надо покурить доки

Stanislav
07.02.2017
13:10:36
хотя на самом деле - просто более короткий путь к тем результатам, к котрым стремится БЭМ

ну так <style scoped> + vue-loader же

или нет?

по правде говоря я сам еще не пробовал vue-loader, как ни странно

Google
Stanislav
07.02.2017
13:11:15
но вроде ж в доках так написано

Emil
07.02.2017
13:11:15
да да, но я что-то все равно не понял

Stanislav
07.02.2017
13:11:59
пацаны в яндексе запили react-bem-core. Выглядит интерересно. Доклад с WSD: Cw?list=PLMBnwIwFEFHdF7aJTIHQ_wJ5tkpyG7CNI

Emil
07.02.2017
13:12:05
в доках css modules?

Ilia
07.02.2017
13:12:07
хотя на самом деле - просто более короткий путь к тем результатам, к котрым стремится БЭМ
не совсем. кода то больше будет в итоге с сервера тянуться. точнее css'а больше придется качать.

Stanislav
07.02.2017
13:12:47
https://youtu.be/sn-H4r6x-Cw

Emil
07.02.2017
13:13:13
"CSS Module is a CSS file in which all class names and animation names are scoped locally by default." - как и во Vue-компонентах в большинстве случаев

Ilia
07.02.2017
13:13:45
вот. все эти XJST JSX - я считаю извращениями

Stanislav
07.02.2017
13:13:55
ну ты пишешь во *.vue файле: <template> <article class="item">...</article> </template> <style scoped> .item { margin: 0 20px; } </style> а он тебе на выходе: <article class="item_498217">...</article> <style>.item_498217 { margin: 0 20px }</style>

в доках css modules?
та не, было упоминание в доках по Vue.js в разделе где *.vue-компоненты упоминались

Stanislav
07.02.2017
13:14:36
Но дебажить это чуть сложнее, имхо

Stanislav
07.02.2017
13:16:27
Но дебажить это чуть сложнее, имхо
есть такое, сейчас напишу плагин… )

Ilia
07.02.2017
13:16:28
а вот модификаторы могут быть и в scope

Stanislav
07.02.2017
13:17:06
Потом верстальщице открывать этот файл страшно
а чего? верстальщики должны работать с vue файлом, там все окуратно

Влад
07.02.2017
13:17:17
При использовании однофайловых компонентов, если компонент большой можно подгружать стили, скрипты и template через src

Влад
07.02.2017
13:17:24
В доках есть

Google
Stanislav
07.02.2017
13:17:33
Подожди, это где такое? scoped в vue не так работает
вот блин, я как-то не затестил этот момент. а как оно работает?

Ilia
07.02.2017
13:18:39
так в этом же весь БЭМ: "скажем нет глобальным стилям"
там нет такого. там есть "скажем нет каскадам стилей"

Stanislav
07.02.2017
13:18:39
Оно data атрибуты добавляет и по ним преобразует css классы

? ? ? Alex ? ? ?
07.02.2017
13:19:11
ребят

а зачем слоты

в вуе

можете дать пример или доку

что то найти не могу

trilog
07.02.2017
13:20:26
что то найти не могу
вот ты хочешь впихнуть что-то конкретное в определенный тег, а у тебя в 1 div есть теги типа <h1> <p> и т.д и т.п

и слоты нужны чтобы запихивать в h1 и p разные данные

Stanislav
07.02.2017
13:20:47
<div class="test"></div> <style scoped> .test {...} </style> будет <div data-3f7727f class="test"></div> <style> .test[data-3f7727f] {...} </style> @termosa

trilog
07.02.2017
13:20:52
из родителя (к примеру)

? ? ? Alex ? ? ?
07.02.2017
13:21:23
т.е я смогу дополнять как бы?

или что

доку лучше скиньте)

Stanislav
07.02.2017
13:21:49
А самому?

Stanislav
07.02.2017
13:23:18
доку лучше скиньте)
я писал пример другу, могу скинуть тебе

ему помогло понять…

Google
? ? ? Alex ? ? ?
07.02.2017
13:23:29
Stanislav
07.02.2017
13:24:05
сейчас на fiddle какой-нибудь залью…

Stanislav
07.02.2017
13:25:39
// component.vue <template> <div class="main"><slot></slot></div> </template> // App.vue <template> <div id="app"> <component>Hello</component> </div> </template> Получится <div id="app"> <div class="main">Hello</div> </div>

Stanislav
07.02.2017
13:29:21
https://codepen.io/termosa/pen/MJBxXP?editors=1010

Kelin
07.02.2017
13:48:27
Не знаю, столько шума вокруг бэма, но у меня такое впечатление складывается, что его юзают только потому, что сами не могут нормально именовать и структурировать

Emil
07.02.2017
13:52:54
стандартизированное решение это хорошо

Ilia
07.02.2017
13:53:20
Не знаю, столько шума вокруг бэма, но у меня такое впечатление складывается, что его юзают только потому, что сами не могут нормально именовать и структурировать
Тут несколько сложнее. БЭМ это известная, и сейчас слава богу неплохо документированная методология со своим комьюнити. Выбирая БЭМ люди знают что могут притащить в проект новый разработчиков и они будут знать что такое БЭМ и продолжат писать разметку в едином стиле.

Admin
ERROR: S client not available

Semen
07.02.2017
13:53:49
Не знаю, столько шума вокруг бэма, но у меня такое впечатление складывается, что его юзают только потому, что сами не могут нормально именовать и структурировать
у Бэм плюс, приходит человек с улицы, и уже понимает структуру проекта, если по Бэм все сделано, а не свой велосипед

Kelin
07.02.2017
13:54:01
Мелочно, имхо

Illya
07.02.2017
13:54:33
нет, потому что "понятное именование и структурирование" у каждого разработчика свое

а БЭМ задокументирован

и вокруг этого еще и экосистема написана

Ilia
07.02.2017
13:54:55
Мелочно, имхо
ты просто забиваешь видимо болт и не испытывал боль поддержки больших долгоиграющих проектов

Ilia
07.02.2017
13:56:13
или когда есть несколько верстаков
в больших проектах их почти всегда несколько. не говоря уже о том что они могут меняться со временем

Так что БЭМ это хорошо. У меня сейчас только одна проблема с ним. Как это совместить с Vue и как не писать шаблоны в виде JS и JS объектов... Если первое стопроцентов решаемо, то касательно вроторого я пока не могу найти решение.

Emil
07.02.2017
14:00:03
А что заставляет писать шаблоны в виде JS? Я что-то не понял

Kelin
07.02.2017
14:08:15
Сколько проблем из ничего ?

Google
Emil
07.02.2017
14:09:45
Kelin, вы в большой компании работаете?)

Ruslan
07.02.2017
16:58:24
Привет всем, парни подскажите, судя по всему нубу, как использовать сторы для реактивного отображения компонентов через v-if и возможно вообще такое?? Вот есть например стор пользователя, при инициализации он пустой, при заходе стейт расширяется данными и в теории должно произойти изменение UI, хотябы изменить вид меню (для неавторизированных и авторизированных). Экшны трегирятся в компоненте страницы, а изменения должны быть видны в куске лейаута, хэдере например. Интересно, что через событийность все ходит — если дернуть метод, который смотрит в стейт стора, а рективности на уровне изменения данных — нет?? чяднт?

Timur
07.02.2017
16:59:07
mapState/mapActions/mapMutations из Vuex.

Сейчас кину ссылку.

https://vuex.vuejs.org/en/state.html#the-mapstate-helper

computed: mapState([ // map this.count to store.state.count 'count' ])

Значение count из стора будет доступно в компоненте как computed свойство.

Ruslan
07.02.2017
17:08:29
mapState/mapActions/mapMutations из Vuex.
не помогает, видимо получается что, меню принимает первоначальный стейт, после идет аякс на сервер, проверяет авторизацию, мутация обновляет стейт, и переход на другую страницу, данные на которой зависят от стора, имеют актуальный вид, а меню, в котором присутствует mapState не изменяется..

Kelin
07.02.2017
17:29:17
computed: { ...mapState(...) } обычно так пишут, хотя это одно и то же посути

А реактивность в Vuex Если вы имеете в виду при обновлении информации внутри самого Vuex, то она есть А изменения из компонента только через commit/dispatch

v-model="$store.state.count" не канает

Ruslan
07.02.2017
17:32:50
Это все верно

Kelin
07.02.2017
17:33:43
а проблема-то в чем?

Ruslan
07.02.2017
17:36:01
Читая еще раз тут, возможно обнаружил причину, надо проверить. Видимо изза навешивания вушных геттеров и сеттеров через defineProperties, реактивность будет работать только через задание первоначальной структуры



Я же стэйт изначально пустым держал. = {}

Kelin
07.02.2017
17:37:36
таки-да

Ilia
07.02.2017
17:38:57
Ребят, вопрос есть. Я не очень разбираюсь в WebPack. Взял сейчас vue-cli с шаблоном webpack. Как я понял там уже Webpack 2. Мне нужен SCSS. Я установил node-sass и sass-loader, но я НЕ правил конфиг. При этом все само заработало. Это попахивает какой то магией. Вопрос: так и должно быть или все таки стоит дописать что-то в конфиг?

В самом конфиге я не вижу никаких rules для sass/scss

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