Angular 탐색에서 브라우저 기록을 사용하여 데이터를 전달하는 방법

프로젝트: bookmarks.dev - 파일: snippet-form.base.component.tsrouter.navigate 메서드에서 탐색state 매개변수의 extras 필드에 객체/data를 배치합니다.

//  constructor( protected router: Router) {}

  navigateToSnippetDetails(snippet: Codelet, queryParams: Params): void {
    const link = [`./my-snippets/${snippet._id}/details`];
    this.router.navigate(link, {
      state: {snippet: snippet},
      queryParams: queryParams
    });
  }


줄의 다른 쪽 끝에서 받으려면 window.history.state에서 찾으십시오.

  ngOnInit(): void {
    this.popup = this.route.snapshot.queryParamMap.get('popup');
    this.snippet$ = of(window.history.state.snippet);
    if (!window.history.state.snippet) {
      this.userInfoStore.getUserInfo$().subscribe(userInfo => {
        this.userId = userInfo.sub;
        this.codeletId = this.route.snapshot.paramMap.get('id');
        this.snippet$ = this.personalCodeletsService.getPersonalCodeletById(this.userId, this.codeletId);
      });
    }
  }




참고 -
https://angular.io/api/router/NavigationExtras




Bookmarks.dev에서 사랑을 나눴습니다.
Copy to mine 기능을 사용하여 이 스니펫을 자신의 개인 컬렉션에 복사하고 코드 스니펫을 쉽게 관리할 수 있습니다.

좋은 웹페이지 즐겨찾기