монитор, то место кружочка хочу поставить гифку, которая будет перемещаться по всему монитору пока идёт загрузка.
Да и в целом, как такое лучше реализовать?))))
Хотя бы понять как это сделать, а алгоритм передвижения попробую подобрать по факту
Кажется вместо mat-spinner надо использовать блок, в котором ты будешь уже реализовывать любую какую угодно логику или помещать нужную гифку. А сам блок будет включаться-выключаться по необходимости, например, по subject. Грубо говоря в app.component <router-outlet></router-outlet> <bebe-total-loader *ngIf="totalLoaderService.loading$ | async"></bebe-total-loader> bebe-total-loader - как раз тот компонент, где ты делаешь что хочешь. В сервисе totalLoaderService хранишь переменную лоадинг, которая либо true, либо false. А также в сервисе есть две функции, одна showLoader, другая hideLoader.
Это всё есть. Мне тогда в этот компонент место спиннера подкинуть калькулятор размера окна и алгоритм перемещения рисунка? Лучше калькуляцию вынести в директиву?
Да, вместо спиннера ставишь что нужно, в самом компоненте прописываешь ему логику. В директиву я бы не выносил, чтобы лишнюю сущность не плодить. Можно в темлейте сделать блок, его пометить через решетку <div #blockToControl></div> Этот блок получаешь в компоненте через @ViewChild @ViewChild('blockToControl') blockToControl: ElementRef | undefined; Сам элемент виден через this.blockToControl?.nativeElement Ну и можно менять его положение или стили и т.д., как нужно. Можно еще загуглить Renderer2, ElementRef, что-то в этом роде.
Спасибо! На счёт рендерер2 я тут когда-то спрашивал, говорили, что это актуальнее всего при ssr. У меня - pwa. Ну а дальше, я так понимаю, вкусовщина
рендерер2 вообще не нужен теперь насколько я прочитал в интернете
а полифилы уже не котируются ?
... и нафиг они нужны? если фреймворк дает api из коробки
чтобы не поддерживать лишний слой абстракции
эм... он не то что бы лишний, он уже в core части фреймворка присутствует
это мне не о чем не говорит, из минусов renderer2 - лишний слой абстракции, из минусов полифилов - какие минусы ?
то, что на серверсайде они нафиг не нужны, не?)
так себе аргумент, т.е вместо знакомого синтаксиса использовать враппер, который ничем не удобнее нейтива ..
так себе аргумент в чем? просаживать работу сервера ненужными вычислениями? отличный вариант гонять воздух
ты думаешь лишний слой абстракции лучше полифилов в плане производительности ?)
если он буквально ничего не возвращает - да, лучше.
ну как бы Renderer кроме всего прочего еще и создает элементы в контексте какого то компонента и для этих элементов добавляется тот же html атрибут что и для хоста используется. Я про атрибут который для изоляции css используется. Если нативными средствами создавать элементы то стилизовать их получиться только с использованием ng-deep
но это все-равно не повод его везде использовать, мб точечно и есть смысл
кто то сказал про везде? я за всю жизнь один раз его заюзал у всего есть задачи которые они решают лучше чем другие, в чем то renderer2 лучше, где то нативный, смотря что надо
это не к вам, а к Илье скорее комментарий
Ну… зачастую у меня выходило, что проще оперировать Renderer-ом, чем нативными апишками
тебя просто так научили или ты так привык, потому что нормальные аргументы только Сергей привел
мне самому вот интересно стоит ли использовать рендерер2, но аргументы должны быть весомыми, чтобы использовать лишний слой абстракции, а не "мне так удобно"
Да, я привык абстрагировать через DI вещи, в том числе и работу с нативными вещами. Просто потому что их на некоторых платформах может и не быть (и у нас их было минимум 3 разных) Про ng-web-apis я прекрасно в курсе, однако не везде это нужно
как раз описал кейс использования полифилов)
если этот код только в браузере, то может и без разницы, но явно что renderer не просто так был добавлен
На мобилках тоже будут полифилы?) Если сервер еще может быть и прохрюкает, то вот мобилки это буквально лишний хлам в производительности
а причем тут мобилки и SSR
так полифилы только для SSR подключаются
А вы думаете только на сервере и клиенте запускается код на ангуляре? У нас и мобилки были
Кто вам это сказал?)
здравый смысл
ты никогда не настраивал, чтобы для разных браузеров грузились разные полифилы видимо
Кто вам такое сказал?) Цимес нативного апи тут, что оно прозрачно и под капотом может быть что угодно. Хоть те же полифилы, хоть моки, хоть что угодно. И я волен выбирать этот механизм
а что без рендерера нельзя сделать прозрачно ?
хибернейт тоже крутая штука, прячет много чего под капотом, но только вот цена у него тоже не маленькая. Зато прозрачно... почти. Но когда без весомых аргументов люди используют абстракцию это говорит мне о плохом дизайне системы
много условий и лишнего кода. хорошо если есть document, а если нет
чтобы document создать?
Обсуждают сегодня