Angular中的路线数组

阿里·哈比布扎德(Ali Habibzadeh)

NG Docs中,它说$ route的路由属性返回所有已配置路由的Array,但是我从中得到的是(console.log($route.routes)):

在此处输入图片说明

它不仅不是数组,而且还为每条路由显示两个键,一个为控制器,一个为新键。

如何在不对此属性进行任何操作的情况下获取路线的示例数组,从而可以基于生成导航route in routes

基本上["/home", "/about", ...]就像一个桃子一样轻松自如

我想避免将其转换为数组并删除键以得到我想要的结果。除非这里的NG忍者说我别无选择。

非常感谢

网友

这些文档显然已经过时了,因为他们说这$route.routes将是一个数组,但显然是一个对象。因此,获取数组的唯一真实方法是执行您正在讨论的转换。对象中的每条路由都有两个条目的原因是因为/about/about/都是/about路由的有效路径为了简化任何歧义,Angular会为所有路由添加一个带有尾部的条目/,然后重定向到该路由而不会带有尾部的斜杠。

进行转换时,您只需要原始路由(不带斜杠),它应该是对象中具有.controller属性的所有路由

所以像这样:

var routes = [];
angular.forEach($route.routes, function(route, key){
    if(route.controller) routes.push(route.originalPath);
});
// routes should now be ["/about","/home","/login"]

抱歉,这不是您想要的答案,但这可能是获得所需内容的唯一方法。希望至少能为您指明正确的方向。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Angular中的路线数组

来自分类Dev

在Angular中测试路线解析

来自分类Dev

如何使用angular2中的链接参数数组从子组件导航到上级路线?

来自分类Dev

Angular Dart中的嵌套路线

来自分类Dev

在Angular Dart中访问路线参数

来自分类Dev

在Angular JS中动态创建路线

来自分类Dev

Angular Dart中的嵌套路线

来自分类Dev

在Angular JS中动态创建路线

来自分类Dev

了解Angular 2中的路线参数

来自分类Dev

Angular - 子路线的路线参数

来自分类Dev

我可以在Angular2中执行此操作吗(子路线中的子路线)

来自分类Dev

Angular2中路线中的常量参数

来自分类Dev

如何在 Angular 路线中嵌套超过 1 个级别的路线?

来自分类Dev

Angular 类中的数组数组

来自分类Dev

路线在Angular 2中更改时的结束时间间隔

来自分类Dev

重定向Angular 2中的不匹配路线

来自分类Dev

如何在Angular 2中取消路线更改?

来自分类Dev

向angular2中的路线添加属性

来自分类Dev

嵌套组件中的Angular 2路线更改

来自分类Dev

路线在Angular中变化时的结束可观察间隔

来自分类Dev

如何在Angular 2中使用子路线

来自分类Dev

Angular 2中的动态路线加载失败。(测试版)

来自分类Dev

组件Angular 2中有多条路线

来自分类Dev

获取Angular Interceptors中的当前路线

来自分类Dev

Angular-在应用程序组件中获取路线数据

来自分类Dev

在Angular 9中基于默认地址的路线显示组件

来自分类Dev

在某些动态路线中将组件隐藏在Angular中

来自分类Dev

如何在Angular中传递多个必需的路线?

来自分类Dev

如何在Angular 2中设置嵌套路线?