问题标签 [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.
angular - Angular 2:将依赖项注入@CanActivate?
在 Angular 2 中,您可以@CanActivate
为组件指定一个注释,您可以在其中确定该组件是否应该被激活。它不是接口的原因是因为在组件实例化之前调用了回调。问题是,我想不出一种方法将依赖项注入到该回调中。而且我需要我的服务来告诉我我是否登录(以及以谁登录)来确定是否允许路由到特定组件。
如何将依赖项注入 @CanActivate 回调?我正在使用 ES5,这不起作用:
编辑:或者,我可以routerOnActivate
在组件上使用生命周期事件,this.router.navigate
如果用户不应该在那里,我可以使用它来将用户送走。缺点是它会破坏浏览器历史记录:如果每次您到达特定 URL 时我都会异步重定向您,您就不能非常有用地使用浏览器中的后退按钮。有没有办法router.navigate
使用history.replaceState
而不是history.pushState
这种情况?
angular - Angular 2 url 路径不起作用
我正在使用@RouteConfig 进行导航,路线配置就像
当我使用路由链接时加载 CarouselComponent,例如
并且 URL 路由到http://localhost:60708/calendar
但是,当我想直接通过在地址栏中输入 URL 来访问 URL http://localhost:60708/calendar 或者通过单击路由链接访问页面后单击 F5(刷新页面),页面没有显示更多。
为什么会这样?如何使用 URL 路径加载组件?
angular - angular2中的全局数据
我正在研究 Angular 2,其中我有应用程序组件,它加载其他组件路由器插座并且还具有登录组件的链接。但我想要保存一些全局变量的方法,这些变量可以在我的应用程序组件和登录组件上访问,以便我可以隐藏和显示登录链接。
这是我的应用程序组件:
这是我的登录组件
登录后,我必须设置一些变量,我可以在应用程序组件上访问以隐藏和显示登录链接,也可以在需要的其他组件上访问。
javascript - angular2 新路由器不会在页面加载时同时加载 2 个组件(头部和内容)
我的 Angular2 beta.0 测试应用程序有一个在页面加载时出现的 HeaderFooter 应用程序。在页眉和页脚之间是内容部分。第一个问题:我希望内容部分在与 HeaderFooter 组件相同的页面加载事件中与 Home 组件一起加载。经过大量研究和折腾,它仍然没有显示加载时的两个组件。第二个问题:我可以通过单击标题中的链接来显示测试主页内容,并将其路由到另一个测试页面。它不能可靠地向后路由,浏览器的后退和前进按钮也不能可靠地路由,即 2 步可以,3 步不行。以下是相关代码:
索引.html
boot.ts - 这应该会在没有单独组件引导的情况下引导所有组件。当我在每个组件中放置引导程序时,我会收到有关选择器的控制台错误,但它们对我没有任何意义。
应用程序.ts
headerFooter.html
主页.ts
postApartment4Rent.ts - 与 home.ts 相同,除了 @Component 中的选择器、h1 文本和 class 语句
angular - 具有相同 URL 的 Angular 2 路由?
像 Angular UI Router 一样,Angular2 中是否可以有多个具有相同 URL 的路由?例如以下两条路线:
目前,控制台中出现路由冲突的错误。
angular - Angular 2路由器在打开组件之前解析服务器请求
我有一个BookDetailComponent
为 url 映射的组件/books/:id
。angular 2 路由器中是否有任何方法可以确保仅在从服务器检索到Book
with given后才打开该组件?id
我正在寻找类似的功能,如Angular 2 路由器中的ui-router 解析。
typescript - Angular 2 路由器 - 注销并且用户尝试导航到登录页面时,我需要 app.ts 重定向
Angular 2 路由器 - 注销并且用户尝试导航到登录页面时,我需要 app.ts 重定向。
我正在使用angular 2 的打字稿。
出于某种原因,重定向适用于某些页面。但是当我在构造函数中有代码时,它会命中它。如果未登录,我想立即将用户重定向到主页。
我正在检查他们是否已登录,如果他们未在 app.ts 文件中登录,我将执行此代码:
这适用于基本页面,但是当我尝试访问我的搜索页面时,例如我得到控制台错误,因为它访问组件构造函数。
这是我在 app.ts 文件中的路由配置:
typescript - Angular2 路由器 - 任何人都知道如何在 app.ts 中使用 canActivate 以便我可以在未登录的情况下重定向到主页
Angular2 路由器 - 任何人都知道如何在 app.ts 中使用 canActivate 以便我可以在未登录的情况下重定向到主页
我正在使用打字稿和角度2。
在我的 app.ts 文件中我的构造函数下的当前尝试:
它目前没有受到打击。知道为什么吗?
javascript - angular2 javascript中的路由
我只能找到使用打字稿的例子。我试过用 ng.core.Component 嵌套 ng.Router.RouteConfig。
它不起作用,我不知道如何以及在哪里导入与路由相关的指令。
有谁知道如何使用javascript来做到这一点?