All streams
Search
Write a publication
Pull to refresh
5
0
Алан Ходов @Shirbak

Пользователь

Send message

Пишу про ангуляр только ради дополнительной статьи про $mol в комментариях

использование функции useQueryParam скрыто

Как же скрыто?

@Component({ /* ... */ })
export class SomeComponent {
  protected readonly id$: QueryParam<string> = useQueryParam('id');
  //                                           ~~~~~~~~~~~~~~~~~~~
  //                           вот она родимая, прямо в компоненте
}

Я открыл файл и вижу, что здесь будет идти речь о query-параметре id.

Можем, в принципе, воспользоваться вашим решением:

@Component({ /* ... */ })
export class SomeComponent {
  protected readonly queryParamService = inject(QueryParamService);
  protected readonly id$: QueryParam<string> = 
    this.queryParamService.getQueryParam('id');
}

Если я правильно понял, под скрытыми зависимостями имеются в виду ActivatedRoute и Router . Ну в этом случае их здесь тоже нет — они скрыты в сервисе.

Получается практически то же самое, разве что у нас появилось лишнее поле queryParamService. К тому же, этот сервис providedIn: root и получает не совсем тот экземпляр ActivatedRoute.

А это важно, если мы будем работать с path-параметрами.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity