ProvidedIn: «любой» в Angular 14+ устарел. Что будет хорошей заменой?

Согласно Официальной документации Angular для Angular 14+, any обесценивается:

any' : Предоставляет уникальный экземпляр в каждом лениво загруженном модуле, в то время как все нетерпеливо загружаемые модули совместно используют один экземпляр. Эта опция УСТАРЕЛА.

Я ничего не нашел в Интернете. Что может быть хорошей заменой ему?

Согласно странице со списком устаревших функций , для этой опции нет замены. Также есть сообщение в блоге , объявляющее об изменении в разделе Устаревшие.

Mihai Chelaru 18.11.2022 17:31

Вероятно, не применимо к Angular, но поищите unknown

Parzh from Ukraine 18.11.2022 20:32

@ParzhfromUkraine Вы, кажется, неправильно поняли мой вопрос. Дело не в any типе в TypeScript.

skouch2022 22.11.2022 15:19

Конечно. Просто кое-что, что нужно иметь в виду.

Parzh from Ukraine 22.11.2022 20:26
Улучшение генерации файлов Angular
Улучшение генерации файлов Angular
Angular - это фреймворк. Вы можете создать практически любое приложение без использования сторонних библиотек.
Еженедельник новостей для разработчиков - выпуск №10
Еженедельник новостей для разработчиков - выпуск №10
В выпуске этой недели собраны самые интересные статьи и новости, отобранные из всего контента, опубликованного за предыдущую неделю на сайте...
Для развертывания Сайтов с использованием Blazor, Angular и React с репозиторием на GitHub на Cloudflare.
Для развертывания Сайтов с использованием Blazor, Angular и React с репозиторием на GitHub на Cloudflare.
Как развернуть сайты с помощью Blazor, Angular и React с репозиторием на GitHub на Cloudflare.
Шаблоны Angular PrimeNg
Шаблоны Angular PrimeNg
Как привнести проверку типов в наши шаблоны Angular, использующие компоненты библиотеки PrimeNg, и настроить их отображение с помощью встроенной...
Promise и Observables в Angular
Promise и Observables в Angular
Здесь мы рассмотрим основные различия между обещаниями и наблюдаемыми таблицами на примере.
Как использовать d3.js для рисования 2D SVG-элементов в приложении Angular?
Как использовать d3.js для рисования 2D SVG-элементов в приложении Angular?
D3.js - это обширная библиотека, используемая для привязки произвольных данных к объектной модели документа (DOM). Мы разберем основные варианты...
0
4
163
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы должны использовать root вместо any или NgModule. Эти два практически не имеют вариантов использования и, скорее всего, используются неправильно. Вы можете прочитать дальше здесь: Angular - Обновите Angular до v15

Я использую ProvidedIn: any, чтобы предоставить уникальный экземпляр в каждом лениво загруженном модуле. Я не хочу делиться этой инъекцией с другим модулем. Думаю, в моем случае мне следует использовать NgModule.providers.

skouch2022 22.11.2022 15:30

В этом случае единственная альтернатива выглядит так: @NgModule({ providers: [Service] }). Кажется, что это не древовидная мысль. Для получения дополнительной информации см.: github.com/angular/angular/pull/… . и angular.io/guide/providers#providedin-and-ngmodules

Leccho 28.11.2022 23:12

Другие вопросы по теме