我正在使用angular-django堆栈编写应用程序。对于在URL items/<item-id>
显示特定项目详细信息的页面,我使用django加载模板,并希望angular加载实际项目。
此页面没有任何其他状态,因此使用路由没有意义。但是为了使用角度来加载数据我需要知道来自url的<item-id>
。有没有办法做到这一点,除了使用$ location服务或类似的东西解析网址?
答案 0 :(得分:0)
我总是只使用vanilla javascript。此函数将接受参数名称并获取其值。例如:url = http://example.com¶m1=abcd
GetURLParameter(param1)将返回&#34; abcd&#34;
var GetURLParameter = function (sParam) {
var sPageURL = window.location.search.substring(1);
var sURLVariables = sPageURL.split('&');
for (var i = 0; i < sURLVariables.length; i++) {
var sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] == sParam) {
return sParameterName[1];
}
}
};
答案 1 :(得分:0)
通过在控制器中注入$ location依赖关系或者在你想要调用这行代码的任何地方使用$location.search()
,这将为你提供查询字符串
对于特定参数
$location.search().parameterName
参数名称可以是查询字符串所需的任何内容。
为了解决这个问题,您可能需要在角配置阶段激活html5mode。
希望这可以帮助你,谢谢。