Описание тега injection-tokens

0 ответов

Angular с Jest: неудачный тест на невозможность найти провайдера с использованием другого импорта

У меня есть приложение Angular с Jest, и все тесты работают нормально. Компонент внедряет службу: component.ts: import { FooService } from '../../services/foo.service'; // relative import constructor(private foo: FooService) {} component.spec.ts: im…
23 мар '21 в 13:58
1 ответ

Angular: HttpInterceptor, объявленный в библиотечном модуле, перехватывающий запросы вне библиотеки

У меня проблема в Angular, из-за которой реализованный экземпляр HttpInterceptors объявленный в библиотеке Angular перехватывает запросы на вызовы, сделанные вне библиотеки (то есть приложения-потребителя). Я изо всех сил пытаюсь понять, почему это …
1 ответ

Проблема с токеном Angular Injection Token - без поставщика [закрыто]

Я сделал образец stackblitz здесь В основном я хочу внедрить службу в определенные компоненты, не используя прямую ссылку на класс службы. Основная цель - избежать импорта класса CustomService внутри компонентов или модулей, которые будут использова…
1 ответ

Как передать токен инъекции во вложенную службу с использованием подхода SCAM (однокомпонентный угловой модуль)?

Я играл с подходом SCAM (Single Component Angular Modules), и я столкнулся с проблемой передачи токена инъекции от родительского к дочернему модулю. У меня есть ScamService с введенными httpClient и baseUrl : import { HttpClient, HttpClientModule } …
1 ответ

Angular 12 - как передать объект в службу

Я выделил некоторые функции компонента в отдельную службу и внедрил службу в свой компонент, чтобы использовать ее. Проблема, с которой я столкнулся сейчас, заключается в том, что в моей службе мне нужен доступ к объекту в моем компоненте. Как перед…
1 ответ

Настройте внешнюю библиотеку Angular с помощью .forRoot(), которая зависит от основной службы приложения для заполнения значений конфигурации.

У меня есть настраиваемая библиотека, для которой требуется настраиваемая конфигурация в модуле библиотеки forRoot (), но мне нужно использовать модуль конфигурации приложения, который загружает эту конфигурацию асинхронно, вместо использования стат…
1 ответ

Предоставьте InjectionToken после APP_INITIALIZATION с разрешенной конфигурацией

Мне нужно получить конфигурацию с помощью фабрики, которая будет разрешена во время ИНИЦИАЛИЗАЦИИ ПРИЛОЖЕНИЯ (с использованием поставщика APP_INITIALIZER). export function loadConfig(): () => Promise<Config> { // return promised config } Эт…
22 сен '21 в 22:43
0 ответов

Angular: как экспортировать InjectionTokens из библиотеки

Я переношу некоторые часто используемые части своих приложений в библиотеку. Для моей AuthService я хочу ввести InjectToken, который объявлен в отдельном файле. // -------------- My token -------------- //src/lib/config-tokens.d.ts export declare co…
06 дек '21 в 21:01
0 ответов

Можно ли изменить поставщика компонента в диалоговом окне Angular Material Dialog?

У меня есть компонент с InjectionToken и пользовательский провайдер для получения данных из хранилища. При базовом использовании компонента мне нужно предоставить данные с «логинами пользователей», но в диалоговом окне мне нужно получить «имена поль…
0 ответов

Тип токена Angular DI Injection не соответствует типу возвращаемого значения фабрики, но служба принимает

Почему можно предоставить токен инъекции определенного типа, но можно передать фактическое значение другого типа, и это будет принято в службе, внедренной с токеном? import { InjectionToken } from '@angular/core'; export const CONFIG = new Injection…
0 ответов

Тест Karma/Jasmine Angular InjectionToken не проходит, если я не использую fdescribe

У меня есть следующий тест спецификации: import { HttpClientTestingModule } from '@angular/common/http/testing'; import { Component } from '@angular/core'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { of } from 'rxjs';…
1 ответ

Использование MatSnackBar в библиотеке

У меня проблема с использованием MatSnackBar из библиотеки. Я создал простой компонент, который выглядит так: <div class="situ-error-snackbar"> <span>{{message}}</span> <button type="button" mat-icon-button (click)="close()">…
1 ответ

Angular условно использует другой токен инъекции в модуле из модуля маршрутизации

Я хочу условно использовать другое значение для токена инъекции в модуле, например: providers: [ { provide: ABC_TOKEN, useValue: useA ? a : b, }, ], как это сделать? а еще я хочу пройтиuseAиз модуля маршрутизации, который может быть примерно таким: …
0 ответов

Нет провайдера для DialogRef InjectionToken

Я создаю директиву, которая открывает подтверждение JavaScript или диалог CDK в зависимости от условия, диалог CDK является необязательным, и когда он не используется, я хочу, чтобы он был встряхнут. Поэтому я использовал InjectionToken, чтобы получ…
2 ответа

Инициализация приложения Angular с помощью Observables

У меня есть это приложение, которое нуждается в некоторой инициализации перед запуском. Я использую рекомендуемый способ с APP_INITIALIZER, фабричной функцией и т. д., а также синтаксисом фабричной функции, который позволяет использовать наблюдаемые…
0 ответов

Как предоставить инъекционный токен инъекционному сервису

У меня есть модуль с сервисом, которым я делюсь @Injectable({providedIn: 'root'}) export class SharedService{ constructor( private store: Store, @Inject(API_REQUESTS) private apiRequests: ApiRequestInterface[] ) { debugger; } Как видите, я хочу имет…
0 ответов

Как я могу зарегистрировать своих собственных поставщиков инъекций по всему миру, чтобы обойти циклические зависимости модулей?

Мы можем использовать Angularдекоратор, чтобы сделать сервис доступным для внедрения зависимостей во всем приложении. В этом случае в качестве токена внедрения будет использоваться сам класс обслуживания; тот, кто его вводит, должен знать класс. Мы …
1 ответ

внедрение в автономный компонент завершается с ошибкой при перемещении в библиотеку npm

Я создал простой автономный компонент Angular, который использует токен внедрения для конфигурации: export const PERSON_DEFAULT_OPTIONS = new InjectionToken<IPersonDefaults>('...') export interface IPersonDefaults { ... } export const provideP…
1 ответ

Angular — InjectionToken с параметром

у меня естьInjectionTokenнравиться: export const SOURCE_DATA_INJECTION_TOKEN = new InjectionToken<CustomObject[]>('All Source Data', { providedIn: 'root', factory: () => { // Returns all source return someArrayData // This data is read from…
05 апр '23 в 05:52
0 ответов

Внедрение отдельной конфигурации для общего сервиса Angular.

У меня есть общий сервис данных, конфигурация которого введена, как показано ниже: export default class GenericDataService<T> implements IGenericDataService<T> { constructor(private readonly httpClient: HttpClient, private readonly confi…