Size: a a a

2020 January 17

N

Nik in Angular Kyiv
Igor Kurkov
Ребята, ктото сталкивался с попыткой подменить глобальные роуты в RouterModule.forRoot(appRoutes) в зависимости от location.hostname? чтото типа  
RouterModule.forRoot(location.hostname === 'test.domain.com' ? testRoutes : appRoutes)?
Дело в том что при ng build --prod сама переменная routes или appRoutes неважно - она должна быть с значением. если значения нет, то бишь
let routes;
if (location.pathname || true || что угодно) {
// сюда он не заглядывает
routes = [];
}
...forRoot(routes, ...) // routes -> undefined

то есть на момент запуска бандла роутер инициализируется я так понял c обязательно записанными роутами.
=====================
Как по условию заменить роуты в роутерМодуле?
попробуй, не уверен что выйдет но все же
import: [location.hostname === 'test.domain.com' ? RouterModule.forRoot(appRoutes) : RouterModule.forRoot(appRoutes)]


но в целом такие штуки с роутингом ангулара не очень
источник

IK

Igor Kurkov in Angular Kyiv
Nik
попробуй, не уверен что выйдет но все же
import: [location.hostname === 'test.domain.com' ? RouterModule.forRoot(appRoutes) : RouterModule.forRoot(appRoutes)]


но в целом такие штуки с роутингом ангулара не очень
Спасибо, попробую
источник

G

George in Angular Kyiv
Igor Kurkov
Ребята, ктото сталкивался с попыткой подменить глобальные роуты в RouterModule.forRoot(appRoutes) в зависимости от location.hostname? чтото типа  
RouterModule.forRoot(location.hostname === 'test.domain.com' ? testRoutes : appRoutes)?
Дело в том что при ng build --prod сама переменная routes или appRoutes неважно - она должна быть с значением. если значения нет, то бишь
let routes;
if (location.pathname || true || что угодно) {
// сюда он не заглядывает
routes = [];
}
...forRoot(routes, ...) // routes -> undefined

то есть на момент запуска бандла роутер инициализируется я так понял c обязательно записанными роутами.
=====================
Как по условию заменить роуты в роутерМодуле?
есть метод resetConfig
источник

IK

Igor Kurkov in Angular Kyiv
George
есть метод resetConfig
будет следующим в пробах, но чето очень все императивно на первых стартах модулей))
источник

IK

Igor Kurkov in Angular Kyiv
Матчеры например не работают тоже, хотя должны
источник

N

Nik in Angular Kyiv
но я бы не трогал location в ангуларе. может есть возможность заюзать environments?
источник

Sergey Фrolov in Angular Kyiv
Igor Kurkov
Ребята, ктото сталкивался с попыткой подменить глобальные роуты в RouterModule.forRoot(appRoutes) в зависимости от location.hostname? чтото типа  
RouterModule.forRoot(location.hostname === 'test.domain.com' ? testRoutes : appRoutes)?
Дело в том что при ng build --prod сама переменная routes или appRoutes неважно - она должна быть с значением. если значения нет, то бишь
let routes;
if (location.pathname || true || что угодно) {
// сюда он не заглядывает
routes = [];
}
...forRoot(routes, ...) // routes -> undefined

то есть на момент запуска бандла роутер инициализируется я так понял c обязательно записанными роутами.
=====================
Как по условию заменить роуты в роутерМодуле?
resetConfig да, работает. Собственно forRoot его и вызывает
источник

IK

Igor Kurkov in Angular Kyiv
Nik
но я бы не трогал location в ангуларе. может есть возможность заюзать environments?
да, потом будет environments, просто пока хотя бы так потестить - не хочет кондишнить. хотя да! момент
источник

MS

Michail Smolinskiy in Angular Kyiv
George
@ContentChild
так не хочет работать, может потому, что слот-элементы пробрасываются со статического html внутрь собраной ангуляром веб-компоненты
источник

AK

Artyom Krasnyuk in Angular Kyiv
Michail Smolinskiy
так не хочет работать, может потому, что слот-элементы пробрасываются со статического html внутрь собраной ангуляром веб-компоненты
Если не ошибаюсь, ContentChild не будет работать с TemplateRef, но будет работать с директивой. Тебе нужно на елемент, который прокидывается навесить кастомную директиву. И потом ContentChild(SomeSelectorDirective, {read: ElementRef}) ...
источник

AK

Artyom Krasnyuk in Angular Kyiv
источник

DG

Danil Gudz in Angular Kyiv
Michail Smolinskiy
Всем привет. Может кто вкурсе. input-элемент выводится внутри ангуляр-компонента через именованый slot, как правильно получить этот input-элемент внутри компоненты, что бы прочитать value? Пробую через @ViewChild('myInput', {static: false}) logoInput: ElementRef; (где myInput template-ref на этот слот) но в logoInput.nativeElement.children пусто😕
ты под template-ref подразумеваешь #myInput ? или <ng-template...>
источник

MS

Michail Smolinskiy in Angular Kyiv
Artyom Krasnyuk
Если не ошибаюсь, ContentChild не будет работать с TemplateRef, но будет работать с директивой. Тебе нужно на елемент, который прокидывается навесить кастомную директиву. И потом ContentChild(SomeSelectorDirective, {read: ElementRef}) ...
источник

MS

Michail Smolinskiy in Angular Kyiv
Danil Gudz
ты под template-ref подразумеваешь #myInput ? или <ng-template...>
#myInput
источник

MS

Michail Smolinskiy in Angular Kyiv
Artyom Krasnyuk
Если не ошибаюсь, ContentChild не будет работать с TemplateRef, но будет работать с директивой. Тебе нужно на елемент, который прокидывается навесить кастомную директиву. И потом ContentChild(SomeSelectorDirective, {read: ElementRef}) ...
Через ElementRef работает, остановлюсь на этом
источник

S

Stanislav in Angular Kyiv
источник

S

Stanislav in Angular Kyiv
источник

S

Stanislav in Angular Kyiv
Підкажіть будь ласка, в мене є урл на котриий я вантажу файл post(ом), у відповідь сервер відповідає як стрім mimetype='text/event-stream' і я хочу отримати з нього дані. Я їх бачу в dev tools а як отримати не розумію.
источник

IF

Igor Filippov in Angular Kyiv
Stanislav
Підкажіть будь ласка, в мене є урл на котриий я вантажу файл post(ом), у відповідь сервер відповідає як стрім mimetype='text/event-stream' і я хочу отримати з нього дані. Я їх бачу в dev tools а як отримати не розумію.
Я не уверен, но возможно тебе поможет это https://www.html5rocks.com/en/tutorials/eventsource/basics/ Хттп запросом по-идее нельзя получить так данные
источник

IF

Igor Filippov in Angular Kyiv
Но могу и ошибаться конечно
источник