
Алексей
24.10.2016
09:22:12

Oleg
24.10.2016
09:31:53
так ты сделай shared чанк
с prime-ng только что разобрался, есть там такой модуль как SharedModule, и если модуль аккордиона я верно импортил 'primeng/components/accordion/accordion'
то SharedModule я импортил из primeng/primeng
сменил путь на 'primeng/components/common/shared'
и в итоге имею по -600КБ с двух чанков ?

Andrey
24.10.2016
09:36:18
CommonsChunkPlugin

Google

Oleg
24.10.2016
09:37:21
осталось бы еще лодаш фиксануть так же)
у кого какие к ангуляру полифилы подключены ?
У меня вот такие, дают 400кб с весу, может что то лишнее или наоборот какой то важный пропустил?
import 'ts-helpers'
import 'core-js/es6/reflect'
import 'core-js/es7/reflect'
import 'core-js/client/shim'
import 'zone.js/dist/zone'
import 'zone.js/dist/long-stack-trace-zone'

Andrey
24.10.2016
09:37:38
и я не знаю как для TS, но для Babel в вебпаке нужно делать телодвижения, что бы включить tree shaking

Oleg
24.10.2016
09:47:53
CommonsChunkPlugin
сделал только что, побилдал с разными minChunks
в случае 2 то в него ничего не выносит, создает в файле лишь вебпаковские ф-и для импорта, размер файла при этом 6кб, делаешь 1 что логично он забирает все из main и кидает common в итоге просто поменялись содержимым)
c 3 и больше результат как и при 2 так что либо я что то не так сделал либо вебпак не работает. В общем и так сойдет, без CommonsChunkPlugin

Alexey
24.10.2016
10:31:22
ага, поправочка, undefined это в бандле уже собраном, видимо ts не осиливает наследование мое.

Michael
24.10.2016
11:18:52
Привет чят. Возможно совсем нубский вопрос но где указывается путь к html? Пытаюсь скрестить Django с Angular и выдает 404 GET /index.html

Alex
24.10.2016
11:20:04
/index.html
Копай в эту сторону

Michael
24.10.2016
11:21:20
копал, искал по проекту, нифига
короч решил сделав директорию статики - директорией проекта. Но структура файлов стремная выходит =\
+ Django получается не работает, страничка открывается через npm start

marat
24.10.2016
12:04:41

Alexey
24.10.2016
12:09:18
Уже избавился от проблемы, но причину так и не понял) тот класс еще наследовался от встроенного BaseRequestOptions, если не экстендить то все норм.

Artem
24.10.2016
12:49:50

Google

Михаил
24.10.2016
12:53:42
Ребят, а каким способом вы делаете формы в ангуляре2 ?
Я просто видел, что делаю как по гайду, но еще так же как в нг1

marat
24.10.2016
12:55:22
я за реактивные формы
model driven

Alexey
24.10.2016
12:55:45
я за template driven
обсуждали уже не раз тут
делай как тебе удобней

marat
24.10.2016
12:56:17
+

Dima
24.10.2016
13:00:36

Алексей
24.10.2016
13:02:12
Всем удобней от модели. Сдавайся!

Andrey
24.10.2016
13:29:13
как то все плохо в ангуляре 2, раз формы можно сделать 4-мя способами)

Alexey
24.10.2016
14:15:41
Всем удобней от модели. Сдавайся!
да щас, я за декларативность всегда, людям нравится писать больше кода в 2 разных файлах чтобы добавить/убрать поле из формы - пожалуйста
я не против

Oleg
24.10.2016
16:55:39
есть один Observable и перед тем как на него подписаться хочу добавить еще один Observable и в итоге в subscribe получить результат с обеих
merge concat вроде подходят он они не приходят одновременно
консолится например с первого а потом второй observable
хотелось бы чтоб результат был как с combineLatest => [result, result]

andretshurotshka?❄️кде
24.10.2016
16:56:18
используй combineLatest?)

Oleg
24.10.2016
16:59:22
с ним не все так просто, первый результат норм а после он попросту запоминает первый результат со второго observable и получаю на выходе от так
[result1, result1]
[result2, result1]
[result3, result1]

marat
24.10.2016
17:02:43
forkJoin?

Oleg
24.10.2016
17:04:48
forkJoin?
пробовал, но что то результат недоходит до subscribe
хотя он то и мне нужен

Google

Андрей
24.10.2016
18:23:39
а если zip?
извиняюсь, не посмотрел в доках что но js zip и будет forkJoin, который уже предлагали.

marat
24.10.2016
18:43:46
возможно zip для текущей задачи подходит даже больше

Oleg
24.10.2016
19:30:16
да zip вроде то что нужно, спасибо

Oleg
25.10.2016
06:45:33
Всем доброе утро, помогите пожалуйста решить проблему, уже неделю голову ломаю как бы лучше сделать
http://ru.stackoverflow.com/questions/582393/%D0%9A%D0%B0%D0%BA-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE-%D0%B2%D1%8B%D1%81%D1%82%D1%80%D0%BE%D0%B8%D1%82%D1%8C-%D0%B0%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D1%83-%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%B0-%D0%B2-angular2

Андрей
25.10.2016
06:52:58
что-то типа
this.checkAuth()
.then(result => if(result) {this.user = this.userService.me} )

marat
25.10.2016
06:54:43
кто-то с промисами работать не умеет
в самом checkAuth тоже ошибка
вопрос не в "как выстроить архитектуру сервиса", а в "как получить результат промиса"

Oleg
25.10.2016
07:04:55
Условно
Auth = () => {
get()
verify().then(getName.then(me=res))
}
при этом сам метод тоже получается асихронный и в компоненте тоже нужно через then дергать
так?

marat
25.10.2016
07:06:12
да

Oleg
25.10.2016
07:07:00
При этом это уже получается только getName,
А чтобы проверить авторизацию
Auth = () => {
get()
verify().then(this.auth=true)
}

marat
25.10.2016
07:12:39
мне этот код не совсем понятен.
идея в том, что промисы используются для асинхронных команд. промисы можно выстривать в цепочки и на каждом следующем шаге работать с результатом предыдущей асинхронной команды.
как верно выстроить цепочку, решать вам

Oleg
25.10.2016
08:21:37

Nikita
25.10.2016
08:26:51
есть хороший визуализатор
http://rxmarbles.com/#amb
может поможет

Alexey
25.10.2016
08:33:26
Всем привет, у меня философский вопрос по наследованию в angular (или ts) :) Когда мы наследуемся от некоего класса в конструкторе которого определяем некие импортные сущности получается что мы должны вызывать super и передавать туда те же сущности, иначе они в базовом классе не определяются. Может я че-то не понимаю но какой смысл в такой абстракции, если нам все равно нужно передавать что-то, импортировать это что-то в классах наследниках?

marat
25.10.2016
08:34:08
в каком языке наследование работает иначе?

Google

Alexey
25.10.2016
08:37:15
ну насколько я ничего не понимаю, если ты в наследнике не определяешь свой конструктор должен вызыватся конструктор родителя, и все как бы хорошо. Но в случае с ts сущности определяемые в базовом конструкторе у меня становятся undefined, если их не передать еще раз в конструкторе наследника.

marat
25.10.2016
08:39:57
не уверен, что должен вызываться конструктор родителя. конструктор родителя создает экземпляр класса родителя, а не наследника.
если создается экземпляр наследника, то наследник определяет каким образом будет создан родитель

Alexey
25.10.2016
08:49:40
class Parent {
constructor(http:Http) { // при вызове Children http - indefined }
}
class Children extends Parent {}
class Parent {
constructor(http:Http) { // все ок }
}
class Children extends Parent {
constructor(http:Http) {
super(http)
}
}
я примерно об этом)
не знаю, может это нормально, но смысл наследования как-то теряется

Андрей
25.10.2016
08:52:42
не теряется, вы наследуете реализацию, значит должны предоставить все ее зависимости
если хотите "наследовать" только интерфейс, а реализацию сами писать, без "ненужных" зависимостей, используйте interface

Alexey
25.10.2016
09:00:28
так я наследуюсь чтобы заимствовать реализацию и при этом не указывать каждый раз зависимости) интерфейс мне тут как раз не поможет.

marat
25.10.2016
09:03:04
удовлетворением зависимостей занимается di, который не знает ничего про зависимости родителя
и то как их удовлетворять

Alexey
25.10.2016
09:16:29
ну т. е. здесь ниче поделать нельзя? только передавать эти зависимости каждый раз?

marat
25.10.2016
09:17:46
или не использовать наследование, а инджектить класс, который сейчас родитель, в класс, который сейчас наследник

Alexey
25.10.2016
09:18:46
что я собственно щас и делаю в итоге) просто хотелось прояснить непонятное

Shoom
25.10.2016
09:24:11
Ребят, на сколько велика разница между Observable.create() и new Subject()?

Oleg
25.10.2016
10:08:25
new Subject() возвращает что логично Subject
что возвращает Observable.create() я не знаю, но факт что некоторые операторы ругаються на Subject и тогда нужно переконвертировать его в Observable вот так subject.asObservable()
@sho_0m

Shoom
25.10.2016
10:09:11
Subject наследован от Observable

Андрей
25.10.2016
10:15:13
Subject нужен тогда, когда что-то свое завернуть в Observable и наблюдать за ним.

Google

Alexey
25.10.2016
10:15:51
Я бы сказал так, Subject это Observable + Observer в одном
т.е можно и subscribe() делать и .next()

Ilya
25.10.2016
17:37:54
Приве, сообщество, чем пользуетесь для стилей, есть кто jss использует?

Andrey
25.10.2016
19:48:50
какой нормальный клиент graphql для ангуляра2? так же apollo?

Ostap
25.10.2016
19:49:17
стоит нубу смотреть сейчас ng-europe ?
и что с конференций посмотреть нубу

Vadym
25.10.2016
20:09:52

Алексей
25.10.2016
21:54:52
https://www.youtube.com/watch?v=qiaH1dNbquk

Ilya
26.10.2016
04:58:19
Нет, серьезно, 335 человек и все css пользуются только?

Ivan
26.10.2016
05:10:02

? Алёна
26.10.2016
05:10:53
Хотя последнее, скорее, уже просто css

Nikita
26.10.2016
05:22:02
крайнер раз было: scss => postcss => css modules => extract text plugin на реакте, сейчас делаю домашний проект на втором ангуляре, думаю использовать css + postcss, но я не импользую typescript поэтому может что и изменится

Shoom
26.10.2016
07:07:17

Igor
26.10.2016
07:08:39
Sass
Подскажите пожалуйста. Есть компонент, которые берет данные с сераера. Хочу вывести оповещение (бейджик) в навигацию, которая уже совсем в другом месте и есть другой компонент.
Как можно связать эти 2 компонента?
Возможно аналог бродкаста, или отдельно для этого сделать сервис, через который прокидывать?

? Алёна
26.10.2016
07:12:53
Эта группа больше не существует