问题标签 [angular2-routing]
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.
javascript - 在 Angular 中,如何确定活动路由?
注意: 这里有许多不同的答案,而且大多数都曾经有效。事实是,随着 Angular 团队改变了它的路由器,有效的方法已经改变了很多次。最终将成为 Angular 路由器的 Router 3.0 版本打破了许多这些解决方案,但提供了一个非常简单的解决方案。从 RC.3 开始,首选的解决方案是使用此答案[routerLinkActive]
中所示的方法。
在一个 Angular 应用程序中(在我写这篇文章时,当前版本为 2.0.0-beta.0),你如何确定当前活动的路由是什么?
我正在开发一个使用 Bootstrap 4 的应用程序,我需要一种方法来将导航链接/按钮标记为活动,当它们的关联组件显示在<router-output>
标签中时。
我意识到当单击其中一个按钮时我可以自己维护状态,但这不包括在同一路径中有多个路径的情况(比如主导航菜单以及主组件中的本地菜单)。
任何建议或链接将不胜感激。谢谢。
login - 角度重定向到登录页面
我来自 Asp.Net MVC 世界,在该世界中,尝试访问未经授权的页面的用户会自动重定向到登录页面。
我试图在 Angular 上重现这种行为。我遇到了@CanActivate 装饰器,但它导致组件根本不呈现,没有重定向。
我的问题如下:
- Angular 是否提供了实现这种行为的方法?
- 如果是这样,怎么做?这是一个好习惯吗?
- 如果不是,那么在 Angular 中处理用户授权的最佳实践是什么?
redirect - 如何重定向到Angular2中的外部URL?
在 Angular 2 中将用户重定向到完全外部 URL 的方法是什么。例如,如果我需要将用户重定向到 OAuth2 服务器以进行身份验证,我该怎么做?
Location.go()
, Router.navigate()
, 并且Router.navigateByUrl()
可以将用户发送到 Angular 2 应用程序中的另一个部分(路由),但我看不出它们如何用于重定向到外部站点?
accordion - 如何使用带有 angular2 的 Bootstrap 手风琴(HTML5 模式/angular2 中的 hashbag)
我正在尝试使用引导手风琴,但(angular2 和引导手风琴)都在散列位置附近播放。
那么angular2中是否有类似html5模式的东西?
angular - 使用嵌套组件中的 RouterLink
使用 Angular 2 beta.0
我有一个像这样的组件结构
这会导致错误:Component "List" has no route config.
所以我像这样在组件上放了一个 RouteConfig List
......
但我得到一个角度错误Error: Child routes are not allowed for "/list". Use "..." on the parent's route path.
我尝试在该路由配置中的 /list 路径之前和之后添加这 3 个点......但没有成功。
路由器上的文档非常简单,虽然我知道这应该基于 ui-router,但我没有看到添加嵌套路由的并行
dart - 在路由器上找不到反射信息
我正在使用 angular2-dart 构建一个小型示例应用程序,并且在设置路由时出现错误:
例外:在路由器上找不到反射信息
我的模板中有一个按钮调用注销方法。单击时应用程序崩溃并显示错误。这是我的代码:
我已经阅读了 angular wiki 的这一部分,但我不确定这与内置包有什么关系。任何指针?
javascript - Angular2 路由。url末尾的斜线
我有路由问题。
当我在 url 'myapp.com/route' 中添加一个斜杠时,最后像 'myapp.com/route/' 我的资源从 'myapp.com/route/...' 加载。
例如:我有必须从“myapp.com/starwars.js”加载的库,但使用斜杠将从“myapp.com/route/starwars.js”加载。 http://prntscr.com/9gpeen
但是没有斜线是正常的 http://prntscr.com/9gpepv
代码
谢谢您的回答!
angular - 如何在 Angular2 中有一个带有我的路由参数的外部 JSON 数据文件?
我是 Angular 的新手,显然 Angular 2 也是。我正在尝试将我的路由参数存储在一个外部文件中(例如,一个 JSON 格式的数据文件)。
我最接近让它工作的是创建一个 .js 文件,其中一个变量设置为我的路由参数,并包含它。
然后将其用于 RouteConfig:
但问题是它期望组件是类,并且它们不存在于 .js 文件中。
我还尝试使用返回 JSON 路由参数的函数,但组件类也有同样的问题。
我正在使用的系统已经有一个 UI 供用户创建网页、设置菜单等。我正在尝试让该系统输出 Bootstrap/Angular2 模板。因为用户可以创建自己的网页,所以我不确定如何设置路由,因为它们可以更改。我认为使用 JSON 数据文件会是一个很好的解决方案,但我的应用程序显然需要使用该文件中的路由数据,而不是在应用程序中进行硬编码。
我正在使用 Angular 2.0.0-beta.0 和 TypeScript。
angular - Angular2路由没有被requirejs加载
嗨,我一直在关注本教程,并且更改了一些文件夹结构,一切都很好。
在 Alpha 阶段,我使用了包含路由的 angular2-seed 项目。
我现在正在尝试设置路由,但一直无法加载导出。
这个组件位于/app/template/footer,我相信导入应该可以工作,我也尝试在导入前添加一个斜杠或相对添加2或3次../
控制台中的错误:
1 Uncaught SyntaxError: Unexpected token < 2 Uncaught SyntaxError: Unexpected token < Evaluating http://localhost:3000/angular2/router 加载http://localhost:3000/app/boot.js 时出错
响应只是加载 index.html