我想使用AngularJS读取URL查询参数的值。我正在使用以下URL访问HTML:
http://127.0.0.1:8080/test.html?target=bob
不出所料,地点。搜索是"?target=bob"。 关于访问target的值,我在网上找到了很多例子,但是在AngularJS 1.0.0rc10中都不行。特别地,下面这些都是未定义的:
location.search.target美元 $ location.search['目标'] $ location.search()(“目标”)
有人知道怎样做有效吗?(我使用$location作为参数到我的控制器)
更新:
我在下面发布了一个解决方案,但我并不完全满意。 在开发者指南:Angular Services: Using $location中的文档中,关于$location声明如下:
什么时候我应该使用$location? 当您的应用程序需要对当前的变化做出反应时 URL或如果您想更改浏览器中的当前URL。
For my scenario, my page will be opened from an external webpage with a query parameter, so I'm not "reacting to a change in the current URL" per se. So maybe $location isn't the right tool for the job (for the ugly details, see my answer below). I've therefore changed the title of this question from "How to read query parameters in AngularJS using $location?" to "What's the most concise way to read query parameters in AngularJS?". Obviously I could just use javascript and regular expression to parse location.search, but going that low-level for something so basic really offends my programmer sensibilities.
那么:有没有比我的回答更好的使用$location的方法,或者有一个简洁的替代方法?