@vuejs_ru

Страница 77 из 3900
Alex
18.01.2017
06:24:10
ну по всей видимости в any :) типа зачем типизация если юзаем any везде

Illya
18.01.2017
06:24:19
не, не, обнови гист, я ее просто не убрал :)

вот, еще раз обновил

Alex
18.01.2017
06:26:01
ну тогда и тут const dottedPrefix = prefix ? ${prefix}. : ''; проверку убери)

Google
Illya
18.01.2017
06:26:10
не, тут все ок

это ж не типы

просто тернарка

Alex
18.01.2017
06:26:32
ну он же так и так уже nullable не будет, по умолчанию строкой пустой

Illya
18.01.2017
06:26:47
правильно - я проверяю на пустую строку

Alex
18.01.2017
06:27:04
а, там точку не заметил

Illya
18.01.2017
06:27:05
если пустая строка - оставить пустой строкой, если непустая - дописать спереди точку

Давайте спросим typescript - все ли ок с этим кодом

http://bit.ly/2jIZ6Ha

typescript не имеет никаких возражений

для тех кто не в курсе - я просто указал что на входе функции объект, ключи которого - строки, а значениями может быть все что угодно (в typescript это записывается как {} )

Alex
18.01.2017
06:29:19
ну если в опциях песочницы поставить все чекбоксы то одна ошибка появляется

Illya
18.01.2017
06:29:50
там где noImplicitAny это ошибка что он не может тип вывести

Google
Alex
18.01.2017
06:30:05
а, ок)

Illya
18.01.2017
06:30:15
теперь возьмем flow

скопируем тот же код, только вместо {} используем слово mixed (это аналог {} во flow)

http://bit.ly/2jXMhYY

а вот flow абсолютно корректно ударил меня по рукам: он говорит - уважаемый, а ты забыл что null это тоже object и ты попытаешься выполнить его flatten

Rafael
18.01.2017
06:31:38
ребзь, что посоветуете для обычного логера? чтобы console.log не писать

Alex
18.01.2017
06:32:54
а, всмысле что свойство может быть, а вот значение у него Null и мы тогда будем пытаться его плоским делать

Illya
18.01.2017
06:33:00
ага

и вот в этом проявляется бесполезность typescript. Да, конечно приятно иметь автокомплит по полям каким нибудь описанных в типах, но блин - это же простейшая ошибка

Пример не лучший, просто вчера под руку попался на реальном проекте

Alex
18.01.2017
06:34:21
в общем если выбирать чем типизировать то лучше Flow?

а чем под вебпак flow потом собирать

Illya
18.01.2017
06:35:23
у Flow в разы более мощная система ВЫВОДА типов. Т.е. когда flow понимает без единого типа в коде что за фигня там может быть

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

кстати сам Vue использует flow

https://www.youtube.com/watch?v=GEo3XIJw8HM

минута самопиара - я там 50 минут разношу typescript в пух и прах )

Alex
18.01.2017
06:36:19
?

звук дребезжит немного

Illya
18.01.2017
06:37:22
там пару минут

Google
Illya
18.01.2017
06:37:24
дальше лучше

орги балбесы запись экрана не вставили, хотя я им прислал ее :)

Andrey
18.01.2017
06:37:47
@xanf_ua А покажи свой типичный компнент на flow с this.$router и this.$store ☺️

Illya
18.01.2017
06:38:52
ни то ни то не использую :)

Rafael
18.01.2017
06:39:42
https://gist.github.com/Fl0pZz/1944cd7b7a409fcb81962510230da355 пока тут есть активность, можете глянуть? как в методы передать функцию, реализованную вне компоненты, но чтоьы ее можно было вызывать через this?

Andrey
18.01.2017
06:42:39
А какой у нее вообще this? window? methods: { creator: creator.bind(this) }

ни то ни то не использую :)
Ну тогда с каким-нить методом с данными из data (на flow)

Illya
18.01.2017
06:44:56
@gmtyllo https://gist.github.com/xanf/8eea0715ea516c819aed18553d4f1875

@gmtyllo так оно прибиндит точно не тот this

Alex
18.01.2017
06:52:15
Даже в 1080 не понять что там после ReduxAction написано ?

johan_krs
18.01.2017
06:52:30
мутный код какой-то

Rafael
18.01.2017
06:53:22
Illya
18.01.2017
06:53:51
Alex
18.01.2017
06:54:09
нет, курсор уже в другом месте)

Illya
18.01.2017
06:54:19
мышиный

Alex
18.01.2017
06:54:21
наверное шрифт такой, не узнать непосвященным)

а

:D

Illya
18.01.2017
06:55:33
шрифт та самая PragmataPro, ее тут недавно вспоминали

Alex
18.01.2017
06:57:44
теперь какой-то код пишешь, а его не показывают толком)

Google
Alex
18.01.2017
06:57:52
о, наконец

с написанием switch прикольный глюк) раза три пишешь и удаляешь)

Illya
18.01.2017
06:59:23
flv-шка с кодом непожатая 999метров

лью на дропбокс )

Alex
18.01.2017
07:01:55
да ладно) думаю суть уловить ролика достаточно будет)

Illya
18.01.2017
07:10:36
@alex_sokolov https://www.dropbox.com/s/pq642l9hy7g1dot/kharkivjs.flv?dl=0

а черт

Admin
ERROR: S client not available

Illya
18.01.2017
07:11:05
дропбокс бесполезный :( первые 15 минут

чтоб полностью - надо скачать

Alex
18.01.2017
07:17:47
спасибо!

Illya
18.01.2017
07:19:10
надо будет сесть залить на youtube нормальную версию, но лениво

Кстати, по теме канала - поймал неприятный баг со <style scoped> в Vue

Владимир
18.01.2017
07:20:36
Illya
18.01.2017
07:22:10
@vladimirdotk https://youtu.be/WlB4fSy1RL0?t=747

там ссылка с таймстампом и там ответ :)

Rafael
18.01.2017
07:33:57
как сделать компоненту без template?

Illya
18.01.2017
07:35:07
просто его не объявлять?

а зачем такая штука?

Rafael
18.01.2017
07:36:00
делаю компоненту с уведомлениями, у нее просто нет шаблона, потому что вызвается toast из materialize

Google
Rafael
18.01.2017
07:36:26
вся логика перенесена в vuex, а в ней просто свистелки перделки сделаны

Rafael
18.01.2017
07:39:30
а все, нашел ошибку :D

неверный путь прописал, когда компоненту импортил

Illya
18.01.2017
07:45:17
что за баг?
Есть компонент А, который допустим объявляет в style scoped классы .foo и .bar Этот компонент A рендерит компонент B следующим образом <b class="foo"> В компоненте B тоже в style scoped объявлены классы допустим .foo и .baz и используется где-то в глубине. Темплейт B такой <div class="baz">.... тут пофигу</div> Что происходит. vue навешивает data аттрибут на компонент A. Допустим это data-1. Поскольку на компоненте B есть scoped стиль foo на нем тоже будет аттрибут data-1 Теперь vue смотит на компонент B. У него тоже есть scoped стили, поэтому на B будет навешаны дата аттрибуты data-2 В итоге B будет по факту отрендерен как <div class="foo baz" data-1 data-2> (один класс пришел от А, второй от B и два дата аттрибута от scoped стилей) И тут мы увидим как на B сработает scoped-стиль foo из B - хотя ж он не должен. Мы его не навешивали.

Alex
18.01.2017
08:00:20
issue им запилишь?)

Illya
18.01.2017
08:02:25
они тут ни при чем

Rafael
18.01.2017
08:28:40
хмм, по всей видимости из-за vuex-persistedstate

@xanf_ua помоему ты там выше писал, что что-то подобное было, да?

Illya
18.01.2017
08:30:23
Если ты используешь persistedstate то данные должны быть сериализуемые

С set не прокатит

Rafael
18.01.2017
08:38:40
хмм, а стоит ли ее хранить в этом сторе?

Kelin
18.01.2017
08:39:49
Вот и я не понимаю

Rafael
18.01.2017
08:40:22
понятно, что по хорошему надо, но сериализовать каждый раз весь map - говнокодерство

Vadim
18.01.2017
08:46:53
Очевидно, что хром

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