我想在" /"之后得到我的所有网址部分。例如:
http://myadress.com/#/example/url/here/param1
Result: ['example', 'url', 'here'].
但$routeParams
仅返回路径参数{param1: 'param1'}
我该怎么做?
答案 0 :(得分:3)
您可以像这样使用网址
var pathArray = window.location.pathname.split( '/' );
从字符串中获取结果。
var secondLevelLocation = pathArray[0];
答案 1 :(得分:0)
另一个替代Jo_bast的答案是使用哈希而不是路径名,因为哈希将在/#/
之后启动两者都是正确的,只是使用$ window.location的不同方式。但是,使用hash可以防止您必须在url中的哈希(#)之前处理路径。
var path = $window.location.hash.split('/');
var path1 = path[1]; //example;
var path2 = path[2]; //url;
等...
答案 2 :(得分:0)
请记住,Angular仍然是JavaScript。您可以使用本机js函数来执行此操作。
查看location文档。
您可以使用location.pathname来实现您的目标。
// http://myadress.com/#/example/url/here/param1
location.pathname.split('/') // --> ['', '#', 'example', 'url', 'here', 'param1']
答案 3 :(得分:0)
您可以使用属于angularjs的$location
服务:
var pathArray = $location.path().split('/');
//remove the first empty ''
pathArray.splice(0, 1);