问题标签 [angular2-router3]

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 投票
1 回答
1338 浏览

angular - RC5 : NgModule 在不同路由器出口的延迟加载

我正在使用 RC5 的 NgModule 进行动态路由加载。

我的应用程序有两个深度级别。我有这样的路线:

  • 应用程序/登录
  • 应用程序/仪表板/模块1
  • 应用程序/仪表板/模块2
  • ETC...

每个 deph 级别都有自己的路由器插座,因此我可以在每个级别定义自定义布局。即登录和仪表板显示在应用程序路由器插座中,而模块1和模块2显示在仪表板路由器插座中。

按需动态加载每条路由的配置是什么?

0 投票
2 回答
186 浏览

angular - Angular2路由器中是否支持多个必需参数

喜欢:

因为我无法生成[routerLink]="['/profiles', {category: 'president', profileSlug: 'obama', page: 1}]"以矩阵查询格式返回意外结果的URL

所以在Router3我必须自己硬整个URL?如果是真的,那么 Angular 的路由器真的......

0 投票
2 回答
159 浏览

angular - Angular2 RC5 路由器 3.0.0 -共享库的组件中没有 href

我在共享模块的组件中生成的路由链接有问题。

这是笨蛋

导航菜单中有 3 个链接。当我单击“信息”时,页面正确显示,并且应该有指向Health的链接。但是 Angular 不解析模板和<a>标签,因为没有添加属性href

相同的html代码

在菜单(其行为正确的地方)和LandingComponent模板中都使用。

我应该导入什么以及在哪里让两个链接都工作?

0 投票
1 回答
244 浏览

angular - Angular2 Router 3.0 - 设置多功能(多部分)路由

我正在制作一个包含两个主要部分的网站,公共部分和控制面板
,所以我正在尝试制作这样的东西(来自 angular.io):

在此处输入图像描述

这是我的代码:(它正在工作)

应用程序/main.ts:

app/app.module.ts:(我在这里声明所有部分的所有组件......)

应用程序/app.routing.ts:

app/primary/components/primary.routes.ts :(与管理.routes.ts 相同)

(我很抱歉让你对所有这些代码感到厌烦)

然后我有三个router-outlet

  • app.component.ts
  • 初级/组件/primary.component.ts
  • 管理/组件/administration.component.ts

现在这实际上工作正常,但我认为它以这种方式一次加载所有网站,所以我猜我实现它的方式是错误的或遗漏了一些
我认为我需要有一个 primary.module.ts 和 Administration.module .ts 并在其模块中声明每个部分的组件,而不是在 app.module.ts 中声明全域,对吗?或者每个部分可能有两个其他 main.ts 文件,但我不知道如何做任何这些,angular.io 中的文档也很有帮助,但找不到与此相关的内容

我希望有人可以确定我是否做错了,并为我提供正确方法的任何资源。谢谢你。

0 投票
0 回答
379 浏览

angular - 更改路由参数而不影响子路由

我有一个/a带有一些参数(例如/a;foo=1;bar=2/)和两个子路由的路由:/a/xa/y.

负责路由a参数的组件foobar并根据用户输入更改它们。它还会更新路由中的参数,如上所示。

我可以在不更改子路由的情况下更新路由参数(或手动读取它们并重新应用它们)吗?

x如果我知道子路由(或) ,这就是我浏览代码的方式y

我希望有一种方法如下:

如果我完全省略了数组的最后一个元素 ( x/ y),它总是会被重定向到,x因为这是默认路由。

版本:核心 2.0.0-rc.5路由器 3.0.0-rc.1

0 投票
2 回答
11201 浏览

angular - 错误:没有为条款条件找到组件工厂

我收到此错误:

使用 angular2-rc6 时未找到条款条件的组件工厂。

我的路线图是这样的:

0 投票
1 回答
241 浏览

angular2-router3 - router.changes.subscribe 在 angular2 路由器 rc2 中已弃用

它似乎router.changes.subscribe已被弃用。

可以用什么来代替它?

我想对每个路由器更改做一些事情,所以请帮助我作为路由器可以做些什么。

0 投票
1 回答
1147 浏览

angular - Angular 2路由器跳过redirectTo并使用子路由

我一直在修补 RC6 一段时间,希望最终路由到嵌套的子组件能够开箱即用。好吧,没有这样的运气。我现在看到的效果是redirectTo默认路由只是被忽略了,相反,Angular 直接进入第一个子组件。

您应该认为输入任何 URL 都会将我带到landing-pageAngular,但不,Angular 选择department的原因超出了我的范围。

从那时起,一切都按预期工作,然后我可以导航到子路线

不过这里奇怪的是,我需要

导航 1 级备份。可能,这两个问题是相关的。

有谁知道我错过了什么?plnkr可以在这里找到

0 投票
1 回答
968 浏览

angular - 在注入路由器之前引导至少一个组件

我正在尝试在 Angular 2 的最终版本中实现身份验证服务,我只有两个组件:登录组件和管理组件,我是管理组件,但导致以下错误,因为我没有选择要早于管理员加载的组件, 这个问题有什么锻炼方法吗?

zone.js:346 错误:未捕获(承诺中):错误:在注入路由器之前引导至少一个组件。(...)

0 投票
2 回答
4399 浏览

angular - 嵌套模块的路由应该如何在 Angular 2 中工作?

出于对 cookie 的喜爱,我无法弄清楚如何配置 Angular 2 路由器的最新版本(最终版本中的那个)。我有一个相当大的 Angular 2 RC5 应用程序启动并运行,但现在需要迁移到最终版本才能继续。

在这个应用程序中,我有很多嵌套组件,根据 Google 的文档,它们应该被组织为模块中的功能。我的应用程序中的典型 URL 如下所示

但也有一些其他的,例如

所以在这种情况下,settings将是一个功能模块。

我已经阅读了文档,这些文档相当冗长,并不急于切入正题,只是发现根本没有涵盖这个案例。我不敢相信这种情况行不通,这似乎是一个巨大的疏忽,所以我想问题是我还没有完全掌握这个路由器的实际工作原理——我有一种感觉,我米不是唯一的。

我创建了这个 plunker来说明我的观点。

在这个 plunker 中,我有 2 层嵌套

足以使问题出现。预期的结果是我可以导航到

即路由器实际上找到了该路由,而目前它没有。

在我将代码移动到 plunker 并添加之前dashboard.component(因为我不能轻易修改 plunker 中的 URL,所以我不得不求助于routerLink)我实际上可以导航到

这是不可能的。似乎在另一个模块中定义的每条路由都被添加到根目录,而不是在彼此之上构建。

对此的任何帮助将不胜感激。