
Pavel
20.09.2017
17:05:50
То что они внешние?

Rafael
20.09.2017
17:16:53

Stanislav
20.09.2017
17:17:14
Ты путаешь в ошибкой в редакторе, наверное

Google

Rafael
20.09.2017
17:18:19
Да, точно

DimenSi
20.09.2017
17:40:55
Вот статья, она позволит написать простейшее решение
https://medium.com/@monochromer/%D0%BA%D0%B0%D0%BA-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D1%82%D1%8C-%D1%80%D0%B5%D0%B0%D0%BA%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D0%B9-%D1%84%D1%80%D0%B5%D0%B9%D0%BC%D0%B2%D0%BE%D1%80%D0%BA-%D0%BD%D0%B0-javascript-cfa34c63fd52

Stanislav
20.09.2017
17:42:46
О, даже перевели

DimenSi
20.09.2017
18:02:26
Хм, из за лагов, потерялся человек которому я сообщение слал. Лол
@reeei

skycoder
20.09.2017
18:17:08
#whois skycoder
front-end разработчик в Московском digital агенстве
Специалист в разработке игр, анимациях и front-end
Мне интересно попрактиковать vue js
Меня пригласил сюда lenstr
Рад знакомству)

Stanislav
20.09.2017
18:21:23
Какой вариант вы бы выбрали, в плане читаемости?
// block Button
<div>
<Icon elem="icon" :name="plus"></Icon>
<span is="bem" elem="Title" :mods="{look, type}"><slot></slot></span>
</div>
// block Button
<div>
<Icon elem="icon" :name="plus"></Icon>
<BEM tag="span" elem="Title" :mods="{look, type}"><slot></slot></BEM>
</div>

Nikolay
20.09.2017
18:23:36
а как с таким бэмом миксовать блоки?

Stanislav
20.09.2017
18:25:01
Пытаюсь понять киллер-фичность react-bem-core (через вью :В)

skycoder
20.09.2017
18:29:36
А выбор только из двух?

Stanislav
20.09.2017
18:30:10

Google

skycoder
20.09.2017
18:30:38
Если свой враппер как я понял пишется, то как задается имя самого блока?

Stanislav
20.09.2017
18:31:43
В самом компоненте
в опциях компонента

skycoder
20.09.2017
18:31:57
Как вариант bem-elem="Title"
Сохранится семантика имени тэга (span), не будет добавочных is="bem"

Stanislav
20.09.2017
18:33:29

skycoder
20.09.2017
18:34:20
Понял. Ну тогда я за <BEM tag="span"

Stanislav
20.09.2017
18:35:10
Вот и Яндекс тоже так выбрал, хотя может в реакте нельзя узнать имя тэга у компонента

Nikolay
20.09.2017
19:08:26
в теории это сможет работать через <template lang="bemhtml">

Stanislav
20.09.2017
19:09:07

Andrey
20.09.2017
19:09:46
Пацыки вы что нибудь еще делаете кроме того, что залипаете в этом чате?

Nikolay
20.09.2017
19:09:55
ну потому что
`
decl({
block : 'Button',
tag: 'button',
mods({ size, theme }) {
return { size, theme };
}
});
`
это синтаксис bem-xjst

Stanislav
20.09.2017
19:11:05

Nikolay
20.09.2017
19:11:48
ну там короче интересная тема, вот этот входной json обрабатывает bemhtml чтобы на выходе получить голый html или пригодный к vue
или к react

skycoder
20.09.2017
19:17:50
Если я захочу использовать bem в vue, какой правильный путь сделать это?

Roman
20.09.2017
19:18:39

Stanislav
20.09.2017
19:19:43

skycoder
20.09.2017
19:20:00
Не обязательно bemhtml, просто нужна нотация block__element block__element--mod в классах
Я так понимаю, неплохо бы преобразовывать bem функции в итоговые строки перед релизом, или этим можно пренебречь?

Stanislav
20.09.2017
19:22:05

Google

skycoder
20.09.2017
19:29:00
Да, круто, у меня такие же велосипеды в php и vanilla.js

Stanislav
20.09.2017
19:30:09

Yaroslav
20.09.2017
19:37:37
Реакт у нас в чате не поджигает сраки, горжусь!

Roman
20.09.2017
19:37:53

Yaroslav
20.09.2017
19:38:52
В чате реакта напиши обратное, пожар будет - сложно погасить

Andrey
20.09.2017
19:39:03
Все вушкой довольны, вот и не подгорает

Pauline
20.09.2017
19:39:28

Леха
20.09.2017
19:42:47

Yaroslav
20.09.2017
19:46:28
лет на конст по православному нужно поменяь, и статику нджинксом отдавать дешевле по нагрузке

DreaMinder
20.09.2017
19:47:33
статика включена только для девмода. нжинкс на проде. А насчет конст обоснуй. На сколько знаю, от него толк только когда присвиваются примитивы

skycoder
20.09.2017
19:48:04
Да и на import пора переходить

DreaMinder
20.09.2017
19:48:32
не вижу смысла, особенно с mjs модулями

Yaroslav
20.09.2017
19:48:37
пока рано ибо за флагом

Roman
20.09.2017
19:49:09
не понравилось мне, что отдельное расширение файла надо. вот когда в .js будут тогда ок, а пока бабель решает)

DreaMinder
20.09.2017
19:49:42
увы, когда-то придется привыкнуть

skycoder
20.09.2017
19:49:53
Я компилирую сервер babel + webpack

Roman
20.09.2017
19:49:55
Чем же они лучше module.exports ?

DreaMinder
20.09.2017
19:50:15
будет 2 толпы разрабов - элитисты которые гордятся что юзают mjs и остальные, которые презирают и их и сраные модули

skycoder
20.09.2017
19:50:25
Соответственно mjs модули не использую, но делаю все через import

Google

skycoder
20.09.2017
19:50:34
Я из третьей толпы :)

Stanislav
20.09.2017
19:50:45
conditional import

Roman
20.09.2017
19:50:48
да нет. когда постабильнее будет запилят в js и все

DreaMinder
20.09.2017
19:51:15
да нет, эт навсегда

Yaroslav
20.09.2017
19:51:34
лет, конст, вар смотри бенчики, и в тру разрабов лет только от нужды, а так ай- яй- яй

DreaMinder
20.09.2017
19:51:40
щяс не помню точно, но это не временно

Roman
20.09.2017
19:51:47
пусть гуляют тогда) с бабелем неплохо живется

skycoder
20.09.2017
19:52:07

DreaMinder
20.09.2017
19:52:37

Yaroslav
20.09.2017
19:53:27
тут не отпитимизация а выработка рефлексов

skycoder
20.09.2017
19:53:29
Статическая проверка и страховка от ошибки koa = 0

Stanislav
20.09.2017
19:55:39
в const нельзя записать новый объект

DreaMinder
20.09.2017
19:56:05
слабенькие доводы. Почему тогда при разработке конст не сделали чтобы записанный туда объект лочился? его запросто можно менять
потому что его сделали для примитивов

Roman
20.09.2017
19:56:39
а еще странно, ты вроде говоришь за импорты, но используешь require)

Yaroslav
20.09.2017
19:56:48
потому что будут стрелять в ногу

skycoder
20.09.2017
19:56:59
Ну вообще в других языках такая же логика. const в C++ например.
Это сделали чтобы декларировать константный указатель. Примитивы тут не причем.
А лок объекта нельзя сделать через const x = const {} потому что лок объекта дорогостоящая runtime операция (помашем ручками динамическим типам), вот на уровне синтаксиса и не сделали

Google

DreaMinder
20.09.2017
19:58:32
это все равно что спорить ставить ли точку с запятой или нет

skycoder
20.09.2017
19:58:48
Не совсем)

Roman
20.09.2017
19:58:50
лол, совсем нет

DreaMinder
20.09.2017
19:58:50
кого-либо может переубедить только линтер и правило в нем прописанное

Stanislav
20.09.2017
19:58:54
Нет

Roman
20.09.2017
19:59:05
ты вкурсе вообще различие между конст и лет?)

Victor
20.09.2017
19:59:25
я хз зачем юзать let если объект не будет перезаписываться никогда

DreaMinder
20.09.2017
19:59:49
я вкурсе что в том варианте где я их использую, разницы абсолютно никакой

Victor
20.09.2017
19:59:50
какой смысл отсавлять возможность использование которой это явная ошибка?

skycoder
20.09.2017
19:59:51
const часть стандарта и просто более правильно все переменные, в которые мы пишем только один раз - делать const
Есть простая практика. Берем код. Делаем replace let -> const
Затем компилируем. Там, где ошибка - меняем обратно на let. Оставшиеся переменные остаются const

DreaMinder
20.09.2017
20:00:11
ладно, я подумаю

Victor
20.09.2017
20:03:05
https://youtu.be/CRJmCyxj61g?t=13m24s вот кстати встречал альтернативное мнение про лет и конст

Nikita
20.09.2017
20:03:19

Victor
20.09.2017
20:03:31
но лично мне больше нравится "делать все переменные константами")

DimenSi
20.09.2017
20:03:41
и у нас православный редактор это vs code

skycoder
20.09.2017
20:04:55

Roman
20.09.2017
20:05:36
А наша библия - vuejs.org

skycoder
20.09.2017
20:06:31
И сборщик наш webpack?

DimenSi
20.09.2017
20:07:51
ага, потому, что мы не хотим думать за другие просто