@angular2Эта группа больше не существует

Страница 86 из 179
Dmitry
22.11.2016
14:08:39
мне нравится название больше :)

Oleg
22.11.2016
14:51:02
как у вебпаке сказать чтоб с этого файла все ф-и были глобально например require('global-loader!./file.js') на самом деле есть такой лоадер но нифига не работает

Shoom
22.11.2016
14:55:43
а почему бы их не объявить глобально?

Oleg
22.11.2016
14:59:47
все решил scripts-loader window.aaa = aaa не канало для моего лида PHPешника

Google
Mikhail
22.11.2016
15:09:35
все решил scripts-loader window.aaa = aaa не канало для моего лида PHPешника
Аккуратнее, ведь твой лид может быть в этом чате

Oleg
22.11.2016
15:10:47
ахах нету его тут)

та й не против что тут был

Yuriy
22.11.2016
15:31:21
Кто-то сталкивался с таким ишью? Cannot read property 'SelectorMatcher' of undefined в angular2-platform-node модуле. Вижу чуваки сделали ПР, но может есть какое-то временное решение? https://github.com/angular/universal/issues/606

Lends
22.11.2016
15:34:07
ну, сталкивались... тут или костылишь, или откатываешься на 2.0.2

Yan?
22.11.2016
16:40:28
@angular_js

Алексей
22.11.2016
16:42:45
Вопросы по первому ангуляру в @angular_js

Кто-то сталкивался с таким ишью? Cannot read property 'SelectorMatcher' of undefined в angular2-platform-node модуле. Вижу чуваки сделали ПР, но может есть какое-то временное решение? https://github.com/angular/universal/issues/606
@lendsman ответил - либо остаемся на 2.0.2 либо применяем патч описанный в этом треде https://github.com/angular/universal/pull/607 либо ждем 2.1.1

Evgeny
22.11.2016
16:47:08
Алексей, а как лучше передать ангуляру начальное состояние инициируемое backend при загрузке angular приложения. При чем без дополнительного api запроса к backend серверу

Алексей
22.11.2016
17:20:35
Алексей, а как лучше передать ангуляру начальное состояние инициируемое backend при загрузке angular приложения. При чем без дополнительного api запроса к backend серверу
Ты про SSR? или Hydration? SSR - angular universal делает это за тебя. Hydration - когда у тебя на сервере заготовленны данные и ты их отправляешь вместе с SPA, и инициализируешь приложение вместе с этими данными. Это можно сделать очень легко если ты используешь ng2-redux, ngrx/store. Можно это решить просто создав для каждого Service - метод setDefaultData. Соответственно в момент инициализации приложения (до bootstrap) вызываешь setDefaultData(window.dataFromServer)

Yuri
22.11.2016
17:31:09
Есть какой-нибудь паттерн, описывающий то, как рендерить ошибки при запросе к серверу ? Я обычно обхожусь ngIf и флагами неуспешного обращения к серверам, но выходит неуклюже

Алексей
22.11.2016
17:44:35
Есть какой-нибудь паттерн, описывающий то, как рендерить ошибки при запросе к серверу ? Я обычно обхожусь ngIf и флагами неуспешного обращения к серверам, но выходит неуклюже
Тут нигде нет хорошего решения (обычно это дизайнер решает в каждом конкретном проекте по своему выводятся сообещения об ошибках - где-то под UI-ем, гдето Alert, гдето Toast notification. И каждый из этих способов по разному работает. Напишите 1 некуклюжий компонент, сделайте так чтобы сервер возвращал ошибки в 1 формате и переиспользуйте компонент

Google
Yuri
22.11.2016
18:12:43
Нене, я спрашиваю не про внешний дизайн, а про паттерн проектирования

Алексей
22.11.2016
18:17:07
Нене, я спрашиваю не про внешний дизайн, а про паттерн проектирования
http://wiki.c2.com/?ExceptionPatterns (почитай-те вот это) Но это Design Patterns - не UI паттерны Для UI - паттернов можно взять Matherial Design Styleguide https://material.google.com/patterns/errors.html#errors-incompatible-state-errors

Нене, я спрашиваю не про внешний дизайн, а про паттерн проектирования
Вообще помог бы конкретный пример того что не устраивает

Dmitry
22.11.2016
20:06:41
Ребят, а может кто зайти на upwork? его что забанили?

marat
22.11.2016
20:07:30
у меня работает

Dmitry
22.11.2016
20:08:15
спасибо

marat
22.11.2016
20:08:22
стоп, я не в москве

за московской проксей тоже работает

Dmitry
22.11.2016
20:09:00
с йоты не работает у меня, все работает кроме него

marat
22.11.2016
20:09:56
ну хз, попробуй с тора)

Dmitry
22.11.2016
20:13:52
да но, timetracker :(

а есть ngbook? кстати, все заработало, но страшо было :)

Алихей
23.11.2016
05:53:22
Доброго времени суток. Возник вопрос, зачем в http модуле делать subscrube, на промисах же проще все работает и можно выстраивать в цепочки обработку данных. Не очень догоняю это решение. Заранее спасибо.

Nikita
23.11.2016
06:14:37
есть два подхода: на промисах и на rxjs кому что болльше подходит тот тои использует функциональность rxjs по работе с асинхронными событиями сильно больше чем у промисов

гугл знает много примеров и сравнений

Vadim
23.11.2016
06:38:29
marat
23.11.2016
06:52:42
Только для http я использую promise. С ними проще работать

Алихей
23.11.2016
06:59:15
Вот про цепочки в Observable не знал. Это же не конкатенацию подписок имели в виду. И с промисами пока видимо проще будет. Вот не вижу полюсов в этом подходе. Может и возможностей больше, но все с преподвывертом как то.

Google
marat
23.11.2016
07:06:43
flatMap например

Stas
23.11.2016
07:08:32
и промис нельзя отменить, для меня это основное приемущество observable перед промисами

при работе с http офк

Nikita
23.11.2016
07:09:40
больше возможностей, но и больше сложностей плюс порог входа в rxjs высок

Artem
23.11.2016
07:10:23
Подписки. Unsubscribe при разрушении компонента. Неудобненько.

Stas
23.11.2016
07:13:57
больше возможностей, но и больше сложностей плюс порог входа в rxjs высок
да, тут нужно понимать, если промисы и так устраивают, то rx и не нужен, но если уже не хватает возможностей промисов для выполнения задачи, то стоит посмотреть на rx, имхо

marat
23.11.2016
07:17:50
Как их может не хватать -_-
Во втором ангуларе их не хватило)

Ilya
23.11.2016
07:25:31
Просто оказалось проще использовать реактивный подход -- не более.

marat
23.11.2016
07:27:52
Sergey
23.11.2016
07:28:08
Как их может не хватать -_-
Чуть встает более сложная задача - все, их не хватает. Вот сделать простой репитер или стор небольшой (на behaviorsubject). Как только осваиваешь новый инструмент, так появляются под него задачи.

marat
23.11.2016
07:28:11
Например реактивные формы

Sergey
23.11.2016
07:28:43
Ну и не будет лишним тут написать про OnPush

marat
23.11.2016
07:29:40
Так пол ангулара можно перечислить

Sergey
23.11.2016
07:30:19
Ну многие этой половиной не пользуются по-факту, а она самая интересная

Ilya
23.11.2016
07:31:18
Rx.js это инструмент -- не более. Можно прикрутить и релей. Не фанатейте, это всего лишь одна из парадигм.

Sergey
23.11.2016
07:32:48
Rx.js это инструмент -- не более. Можно прикрутить и релей. Не фанатейте, это всего лишь одна из парадигм.
Ну и правда, не фанатеть же от промисов в 2016м. И может речь не про релей (нафиг никому не нужный), а редакс?

Stas
23.11.2016
07:32:54
Rx.js это инструмент -- не более. Можно прикрутить и релей. Не фанатейте, это всего лишь одна из парадигм.
так мы ж в контексте ангуляра, там ничего прикручивать не нужно, он уже там ?

marat
23.11.2016
07:33:33
Инструменты на пустом месте не появляются, возникает задача - появляется инструмент решающий эту задачу

Google
Ilya
23.11.2016
07:35:47
Хмм, нет, здесь была задача-идеи-реализации, их много -- это всего лишь одна из них. А Релей и аполо неплохое решение многих проблем инвалидации данных.

marat
23.11.2016
07:37:16
как и ангулар

marat
23.11.2016
07:37:26
одно из решений

Dmitry
23.11.2016
07:56:10
я привык к signal slot механизму в qt что по сути реализация паттерна observer и поэтому observable мне привычнее юзать

а промисы я юзаю тока когда нужно что-то выполнить после результата выполнения предыдушего действия

Алексей
23.11.2016
08:24:14
Доброго времени суток. Возник вопрос, зачем в http модуле делать subscrube, на промисах же проще все работает и можно выстраивать в цепочки обработку данных. Не очень догоняю это решение. Заранее спасибо.
Observable => Promise. Промисы это детская игрушка по сравнению с Observable. Реактивное программирование это отдельное направление программирования. Начем с того что Observable позволяют настроить поток данных. Отменять подписку (привет промисы!)

Алексей
23.11.2016
08:30:54
Настроить поток, можно пример какой нибудь. Что именно имеется в виду
Пример - автосохранение формы. С Debounce, проверкой на изменения (если ничего не изменилось то ничего не произойдет) и incremental backoff и retry // editProfileForm uses autosave this.editProfileFormGroup.valueChanges .debounceTime(1000) .filter(() => this.editProfileFormGroup.valid) .distinctUntilChanged() .switchMap((values) => this.http.post(Constants.API_PREFIX + '/profile', values).retryWhen(attempts => // incremental backoff attempts .zip(Observable.range(1, 3), (_, i) => i) .flatMap((i: number) => { return i < 3 ? Observable.timer(i * 1000) : Observable.throw('Retry was not helpfull'); }) )) .subscribe(null, this.onAutoSaveProfileFail);

Алихей
23.11.2016
08:31:46
Спасибо ?

Андрей
23.11.2016
08:36:28
о, .NET-овские Reactive Extensions портировали в JS?

Алексей
23.11.2016
08:37:25
о, .NET-овские Reactive Extensions портировали в JS?
Они с момента создания делали библиотеку под JS. (я бывший .Net программист) C Observable и Reactive programming - работал с 2009-го

В Android RxJS for Java - уже почти стандарт.

http://reactivex.io/languages.html

Андрей
23.11.2016
08:40:43
круто :) я сейчас впоминаю, даже как-то игрался с какой-то реализацией на js несколько лет назад, но тогда казалось что это как-то крутовато для js, типа, "куда там, на клиентские скрипты настоящее программирование тащить". а вон как все обернулось)

Vladimir
23.11.2016
08:41:54
А schedulers+linq+observables

Андрей
23.11.2016
08:42:35
Ну он появился гораздо позже, чем первая версия linq2objects

Алексей
23.11.2016
08:43:31
Но в .нете же rx появился с linq
Не - Linq и Rx - это разные вещи. Но появились они относительно вместе

Google
Андрей
23.11.2016
08:48:47
LINQ с .net 3.5 запустили, а Rx с .NET 4.0, вместе с async и Task

Vladimir
23.11.2016
08:49:22
Не - Linq и Rx - это разные вещи. Но появились они относительно вместе
Я к тому, что уже можно было реализовать реактивные с появлением linq

Dmitry
23.11.2016
09:10:10
Концепция не нова

Просто ща стала популярной

Lends
23.11.2016
09:11:13
прям как Хаскель... 90-го года, а говорить про него только в последнее время начали

Так в этом и суть

Maksim
23.11.2016
09:31:39
ngrx/store посмотри если там также как в реакте

Страница 86 из 179

Эта группа больше не существует Эта группа больше не существует