问题标签 [angular-activatedroute]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
42445 浏览

angular6 - Angular 6 - 获取当前路线及其数据

如何获取您所在的当前路线及其数据、子项和父项?

如果这是路由结构:

如果我目前在 CompanyComponent 中,我如何获得我当前的路线 w/c is Company,获取其父 w/c is about、其数据及其兄弟姐妹(例如任务等)?

0 投票
1 回答
489 浏览

angular - ActivatedRoute 的测试替身不起作用

Angular 文档提到了 ActivatedRoute 的测试替身:

但是当我在我的组件中使用它时 -

但这给出了错误: 在此处输入图像描述

编辑:无论我将.setParamMap()-放在哪里,这个错误都会持续存在。it()beforeEach()

我知道我可以简单地使用 observable 而不是存根,但出于好奇,知道我在这里做错了什么吗?我应该怎么做才能让它工作?

0 投票
3 回答
13701 浏览

angular - Angular 5路由中的queryParams列表为空

我是 Angular 的新手,我一直在寻找解决问题的方法,但不幸的是我还没有找到。当我将参数传递给路由器(路由器类)时,但参数列表(在目标站点上)为空。

Article-details 组件(路由为 ActivatedRoute 类):

ArticleList 模块中的路由(我项目中的模块之一):

当我在目标组件中记录 route.url 时,结果是:

ArticleDetailsComponent {"_isScalar":false,"observers":[],"closed":false,"isStopped":false,"hasError":false,"thrownError":null,"_value":[{"path":"文章详细信息","参数":{}}]}

如果有人知道如何修复它,我将不胜感激:)

0 投票
3 回答
1604 浏览

angular - 如何从任何 Angular 组件访问 URL 参数?

我有一个应用程序,其组件结构如下:

单击父网格中的项目,将加载与该项目相关的子网格。

在大子级别,我的浏览器 URL 如下所示:

这将基本上显示第一个父母的第 23 个孩子的所有孙子。

我的路由配置中此 URL 的路径如下所示:

我可以通过做一个简单的操作从我的组件中导航来访问childIdparentId参数值(当然对于父 ID 必须遍历路由树)。ActivatedRouteGrandChildrenthis.route.snapshot.params['childId']

现在问题...

如何从我的 Header 组件访问:childIdand ?:parentId当我执行这些值时,这些值显示为未定义this.route.snapshot.params['childId']

我只需要访问父 ID 和子 ID,只要它们在 URL 中,无论哪个组件具有控件。

0 投票
2 回答
33 浏览

angular - Angular 5 中的 ActivatedRoute 不提供 URL 参数。想法?

我已经在我的 app.component.ts 页面上实现了 ActivatedRoute。这是我有一个大的红色退出按钮的页面,它按预期出现在我的应用程序的所有页面上。

我跳转到我创建的 url(带有查询字符串),如下所示:

http://localhost:4200/status?returnString=xyz

private route: ActivatedRoute我的构造函数中有一个。在我的ngOnInit()功能中,我有console.log(this.route.queryParams);. 这将返回一个对象,其中是具有预期._value属性的对象。returnString: "xyz"

问题是,当我console.log(this.route.queryParams.returnString)console.log(this.route.queryParams._value)我被提供一个没有属性的对象时。{}.

我的问题是,发生了什么,或者,我做错了什么?我需要什么才能从我可以在 Angular 5 中使用的 URL 获取参数?

0 投票
1 回答
1104 浏览

angular6 - 如何获取激活路线的部分路段数据?[角度 6]

我想逐段获取激活路线的数据以检查它是否是company_id !== null

我试过了const prefix = this.activatedRoute.url;。但它提供了长数据。我想获取company_id.

如果您提供任何答案,谢谢您:)

0 投票
2 回答
1145 浏览

angular - 从 Angular 4 服务中的 HTTP get/post 获取查询参数

我正在尝试使用以下 HTML 表单发送表单数据:-

现在每次我单击提交按钮时,都会打开另一个选项卡(这是预期的),其 URL 为:- https://test-pubg.sohum.comt:4200/securelogin?accessToken=test&refreshToken=test

我得到空白的浏览器控制台这是问题

现在,如果我将 URL 更改为以下内容(注意 URL 中添加的 #)并按 F5 重新访问 url:-

https://test-pubg.sohum.com:4200/#/securelogin?accessToken=test&refreshToken=test

我在浏览器控制台上获得了预期的数据,如下所示:-

Angular 正在开发模式下运行。调用 enableProdMode() 以启用生产模式。

构造函数调用

测试

测试

即使在表单的操作方法是 post 的情况下也会发生这种情况

现在在操作 URL 上,我运行了一个 angular 4 服务,其构造函数如下:-

我无法在提交按钮单击时发送数据。另请注意,我已为我的应用程序启用 HTTPS。作为参考,我将我的角度路由详细信息发布如下:-

proxy.conf.js

组件路由.moudle.ts

包.json:-

这种行为的可能原因是什么。我已经关注了 stackoverflow 和 github 上的相关线程。寻求帮助,我将不胜感激。

0 投票
3 回答
1157 浏览

angular - 使用 ActivatedRoute 在返回到 Angular 应用程序中的组件时加载数据

我正在尝试在我的 Angular 应用程序中获取我的激活路由,以便我可以在 onInit 生命周期挂钩中加载它,这样当用户返回到组件时,组件将加载他们上次离开时​​的 url 状态.

我已经导入了 activateRoute 并将其注入到构造函数中:

然后,在 onOnit 中,只是为了看看我有什么,我尝试了这个:

console.log('路由信息:', this.route.queryParams);

我得到的是 a behavior subject,所以我尝试添加:

现在返回一个subscriber.

底线,我想要的是能够捕获当前的 url/查询字符串,并在 ngOnInit 中加载它。像这样的东西:

这看起来很接近吗?我怎样才能真正让组件使用激活路由来加载 url/查询字符串中的内容?

更新:在下面的建议之后,我认为它可能看起来像这样?

更新 2:

如果我这样做:

我在控制台中得到了这个:

这就是我的 url/查询字符串的样子:

所以它似乎是从我在控制台中看到的获取查询字符串。

那么,最重要的是,这会在组件加载时加载 url/查询字符串的当前状态吗?

显然,不是,因为这是我在加载组件时得到的 url:

0 投票
0 回答
785 浏览

angular - Angular 获取 URL 参数并将它们写入输入字段

我有一个系统,其中有一个更改密码组件。这里的问题是我的来自 resetPW 的 URL 参数进入了第一个输入字段。

当我加载页面时,来自重置的参数进入第一个输入字段

这是我的component.html:

这是我的component.ts:

出于某种原因,此行确实将 url 参数放在输入字段中:

我不明白为什么会这样,有人可以帮忙吗?

0 投票
2 回答
4927 浏览

angular - 在 Angular 6 中获取当前活动的子组件

我正在使用Angular 6.

我在我的应用程序中创建了一个深度路由,其中app.module​​带有组件的声明AdminLayout

还有AdminLayoutComponent一个模块,它导入其中的所有其他模块。

ComponentsModule是在AppModule中导入的,我想在其中获取当前活动的组件或 URL。

所以,在 ComponentsModule 的一个组件中我这样做是这样的:

哪个控制台喜欢

在此处输入图像描述

在这里,它具有component > nameas AdminLayoutComponent而我已经加载了DashboardComponent

如何获取当前活动的组件名称或 URL?