2017-01-06 149 views
1

我正在嘗試使用路由來構建Angular 2應用程序。我在我的模板的鏈接,看起來像這樣:typescript angular2模板queryParams

<a href="#" [routerLink]="['/Foo']" [queryParams]="{page:1+curr}">Next</a> 

在我的組件類curr被定義爲

curr: number = 0 

我想鏈接的網址是

/Foo?page=1 

相反,它看起來像1curr正在連接並且URL是

/Foo?page10 

任何想法?

+0

您的代碼正常工作...?我測試了它,它增加了1並正確地curr。 – 12seconds

回答

0

試試這個代碼

<a href="#" [routerLink]="['/Foo']" [queryParams]="{page:'1'+curr}">Next</a> 
+0

我試過並得到相同的結果'/ Foo?page = 10' –

+0

是的,它是預期的結果 –

0

的問題是,即使curr被宣佈curr: number = 0後來被asigned通過AJAX返回的變量,正好是一個字符串

curr = data.current // current is a string 

我預計這會被transpiler抓住,但我並沒有運行lint的知識。 因此,當試圖添加一個字符串和一個數字時,該數字被強制轉換爲一個字符串,並且結果是串聯。