2016-06-29 1 views
0

typescript로 작성된 angular2 앱의 다른 구성 요소에서 데이터를 매개 변수로 보내고 그 데이터를 검색하려고합니다. 나는 유형 번호 인 데이터를 전송할 때 성공하지만 문자열 데이터를 보낼 때 다른 경우에는 실패합니다. 이 경우 가져온 데이터는 NaN입니다. 데이터가 URL에 표시됩니다. 나는 angular2 문서뿐만 아니라 다른 stackoverflow 질문을 보았지만 해결책을 찾지 못했습니다. 다음은 관련 코드 스 니펫입니다.왜 내 angular2 앱에서 매개 변수 데이터를 검색 할 수 없습니까?

이 app.routes.ts

{ path: 'recommendations', component: Recommendations, 
    children:[ 
     {path:'info/:mod-title/:mod-desc', component:ModalInfo}, 
     {path:'map/:lat/:lng', component:Map} 

    ]}, 

recommend.component.ts

loadInfo(){ 
    this.router.navigate(['/recommendations/info/:'+this.modTitle+'/:'+this.modDesc]); 

    loadMap(){ 
     this.router.navigate(['/recommendations/map/:'+this.lat+'/:'+this.lng]); 
    } 

모달-info.component.ts

ngOnInit():any { 
    this.sub = this.modalRoute 
     .params 
     .subscribe(params => { 
     this.itemTitle = +params['mod-title']; 
     this.itemDesc = +params['mod-desc']; 
     }); 
    alert(this.itemTitle+" "+this.itemDesc); 
    this.loadData(); 
    } //This alerts NaN 

google.component.ts

ngOnInit():any { 
    this.sub = this.route 
     .params 
     .subscribe(params => { 
     this.lat = +params['lat']; 
     this.lng = +params['lng']; 
     }); 
    } //This assigns the data correctly. 

답변

1

+ 연산자가 문자열을 숫자로 변환하려고한다는 것을 알고 있습니까? 문자열이 숫자가 아닌 경우 NaN

+0

아니요, 문서를 볼 때 나는 문자열 데이터라고 생각했습니다. – Dan

관련 문제