Size: a a a

2020 November 17

IF

Igor Filippov in Angular Kyiv
Еще можно не грузить то что во вьюпорт юзера не попадает. Тоже полезно
источник

IF

Igor Filippov in Angular Kyiv
Олександр Савуловський
Добрый день. Какие есть способы уменьшить чанки при сборке ng build --prod?
Это вот сюда же
источник

DT

Denchik Tymokhin in Angular Kyiv
Igor Filippov
Иногда проще ручками сделать обработку 1-2 инпутов чем тащить целый модуль для реактивных форм.
intersection?
источник

IF

Igor Filippov in Angular Kyiv
Denchik Tymokhin
intersection?
Ага и динамическая загрузка а потом компайл модуля в рантайме
источник

DT

Denchik Tymokhin in Angular Kyiv
Igor Filippov
Ага и динамическая загрузка а потом компайл модуля в рантайме
и все без подписок и на пайпах?
источник

IF

Igor Filippov in Angular Kyiv
Denchik Tymokhin
и все без подписок и на пайпах?
Я не понял
источник

IF

Igor Filippov in Angular Kyiv
Все так же как всегда. Просто механизм загрузки отложенный
источник

DT

Denchik Tymokhin in Angular Kyiv
Igor Filippov
Все так же как всегда. Просто механизм загрузки отложенный
неее это просто оффтоп)
источник
2020 November 18

IP

Ihor Papizh in Angular Kyiv
Привіт) не можу пофіксати помилку -  Cannot read property 'children' of undefined...в ангулярі 6 використовував render все працювало ок - оновившись до 11 і при використанні render2 почалась біда(
хто знає в чому проблема?
 var navbar: HTMLElement = this.element.nativeElement.children[0].children[0];
       console.log(navbar);
источник

IF

Igor Filippov in Angular Kyiv
Наверное в момент вызова этого кода дом элемента еще нет на странице
источник

IF

Igor Filippov in Angular Kyiv
Попробуй внутри afterviewinit хука вызвать
источник

IP

Ihor Papizh in Angular Kyiv
Igor Filippov
Наверное в момент вызова этого кода дом элемента еще нет на странице
ngAfterViewInit() {
       var navbar: HTMLElement = this.element.nativeElement.children[0].children[0];
       console.log(navbar);
       this._router = this.router.events.filter(event => event instanceof NavigationEnd).subscribe((event: NavigationEnd) => {
           if (window.outerWidth > 1500) {
               window.document.children[0].scrollTop = 0;
           } else {
               window.document.activeElement.scrollTop = 0;
           }
           this.navbar.sidebarClose();

           this.renderer.listen('document', 'scroll', (event) => {
               console.log(event)
               const number = window.scrollY;
               var _location = this.location.path();
               _location = _location.split('/')[2];

               if (number > 150 || window.pageYOffset > 150) {
                   navbar.classList.remove('navbar-transparent');
               } else if (number < 150) {
                   // remove logic
                   navbar.classList.add('navbar-transparent');
               }
           });

       });
   }
источник

IP

Ihor Papizh in Angular Kyiv
і все одно помилка
источник

AS

Alex S in Angular Kyiv
Ihor Papizh
ngAfterViewInit() {
       var navbar: HTMLElement = this.element.nativeElement.children[0].children[0];
       console.log(navbar);
       this._router = this.router.events.filter(event => event instanceof NavigationEnd).subscribe((event: NavigationEnd) => {
           if (window.outerWidth > 1500) {
               window.document.children[0].scrollTop = 0;
           } else {
               window.document.activeElement.scrollTop = 0;
           }
           this.navbar.sidebarClose();

           this.renderer.listen('document', 'scroll', (event) => {
               console.log(event)
               const number = window.scrollY;
               var _location = this.location.path();
               _location = _location.split('/')[2];

               if (number > 150 || window.pageYOffset > 150) {
                   navbar.classList.remove('navbar-transparent');
               } else if (number < 150) {
                   // remove logic
                   navbar.classList.add('navbar-transparent');
               }
           });

       });
   }
доступ к DOM дереву делай через атрибут директивы
https://angular.io/guide/attribute-directives
источник

AS

Alex S in Angular Kyiv
а вообще, у тебя там дом еще не отрендерился.. можешь его через https://angular.io/api/core/ChangeDetectorRef#detectchanges ловить попробовать (или сеттаймаут, на худой конец)

но вообще - выкинь это в директиву и никаких детект ченжей не надо делать
источник

IP

Ihor Papizh in Angular Kyiv
Alex S
доступ к DOM дереву делай через атрибут директивы
https://angular.io/guide/attribute-directives
пробував через  setTimeout  не допомогло...
источник

K

Kriben in Angular Kyiv
таймаути точно повикидати варто. є якийсь резон в тому, що елемент шукається одним способом, а потім через window? document.body.children теж на undefined свариться?
источник

IP

Ihor Papizh in Angular Kyiv
Kriben
таймаути точно повикидати варто. є якийсь резон в тому, що елемент шукається одним способом, а потім через window? document.body.children теж на undefined свариться?
Що я хочу зробити) це добавляти і видаляти клас при скролі, через document.body.children не видаляє або я щось роблю не так
источник

K

Kriben in Angular Kyiv
renderer пробував використовувати? варто б переписати з використанням його
источник

IP

Ihor Papizh in Angular Kyiv
Kriben
renderer пробував використовувати? варто б переписати з використанням його
напишу в приват
источник