在我的url中,我有这样的id:
http://localhost:3000/#/projectSummary/2/3?id
从这个我需要得到2
(父id)和3(子id)使用$location.search
如何分别得到这两个。因为我需要请求两个单独的查询。
目前我正在使用:
console.log( $location.search('id') );
它给了我作为:
{$$protocol: "http", $$host: "localhost", $$port: 3000, $$path: "/projectSummary/2/3", $$search: Object…}$$absUrl: "http://localhost:3000/#/projectSummary/2/3?id"$$compose: ()$$hash: ""$$host: "localhost"$$parse: (d)$$parseLinkUrl: (a,c)$$path: "/projectSummary/2/3"$$port: 3000$$protocol: "http"$$replace: false$$search: Object$$state: null$$url: "/projectSummary/2/3?id"
从这个我怎么能得到两个id的2
和3
?
ANGULAR
$location.search()
将输出id
现在我们有单独的id
,让我们得到其他值…
$location.path()
将输出/#/projectSummary/2/3
现在你可以这样做:$location.path().replace("/#/projectSummary/", "");
,它应该会给你2/3
但是我们真正想做的是:$location.path().replace("/#/projectSummary/", "").split("/");
给你一个单独的值的数组。
现在这三个值都分开了,可以放入下一个字符串中。
纯JS你需要使用JavaScript的Location Object。
window.location.search
将输出id
现在我们有单独的id
,让我们得到其他值…
window.location.pathname
将输出/#/projectSummary/2/3
现在你可以这样做:window.location.pathname.replace("/#/projectSummary/", "");
,它应该会给你2/3
但是我们真正想做的是:window.location.pathname.replace("/#/projectSummary/", "").split("/");
给你一个单独的值的数组。
现在这三个值都分开了,可以放入下一个字符串中。