ค้นหาเว็บไซต์

angular - แปลง observable เป็น string ใน typescript


ใน ngOnInit() ฉันกำลังอ่านพารามิเตอร์ของคำถามจากโค้ดต่อไปนี้ วิธีการแปลง observable เป็นสตริงคืออะไร?

  constructor(private router: ActivatedRoute) { }

  textToDisplay: Observable<string>;

  ngOnInit() {
    this.textToDisplay = this.router
      .queryParamMap
      .pipe(map(params => params.get('session_id') || 'None'));
  }

คำตอบ #1

ใช้วิธี Subscribe พิจารณาตัวอย่างดังต่อไปนี้:

 this.route.queryParams.subscribe(params => {
    console.log(params); // {order: "popular"}
    this.order = params.order;
    console.log(this.order); // popular
 });

คำตอบ #2

คุณสามารถลองวิธีแก้ปัญหานี้ตามที่ให้ไว้ได้:

constructor(private router: ActivatedRoute) { }

  textToDisplay: Observable<string>;

  ngOnInit() {
     this.router.queryParams.subscribe(resp => {
        if (resp.status) {
          //get response data
          this.textToDisplay = resp
        }
      });
  }