2017-09-11 35 views
0

我想與查詢字符串參數與通常的路線參數一起在AngularJS應用工作,並已經在這個職位的解決方案如下:how to pass querystring in angular routes?如何使用AngularJS Route檢測查詢字符串參數中的更改?

的解決方案似乎工作:與$location.path第一更改路線,然後應用查詢字符串參數爲$location.search

但是,我遇到了一個情況,路由不需要改變,但查詢參數需要。

例如: '?/書籍/編程ID = 123'




'?/書籍/數學ID = 234'
移動工作正常。

然而,


移動 '書籍/編程?ID = 123'

'書籍/編程?ID = 124'
不起作用。

看來,AngularJS只會針對常規路由參數進行更改而不會更改查詢字符串參數,因此如果查詢字符串是URL中唯一發生更改的內容,則應用程序不會響應導航。

+0

在此處運行良好:http://plnkr.co/edit/lefewLl9jvfC2euDxR6X?p=preview。發佈一個完整的重現問題的最小例子,就像我剛纔那樣(但不能重現它)。 –

+0

這聽起來很奇怪:我經常更改代碼,並在閱讀完您的推薦,當我將它帶回只改變查詢字符串參數的狀態時,它完美地工作,我再也不能重現該問題。謝謝。 – myTerminal

回答

0

正如AngularJS 1.6.5驗證的那樣,根據@ JB-Nizet的Plunkr,問題不再發生。這個問題仍然存在於我之前錯過的,它不起作用。

將其標記爲已解決,因爲它不再發生。

相關問題