问题标签 [angular-component-router]

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 回答
886 浏览

angularjs - 如何将 AngularJS 1.5 的组件路由器与用户身份验证结合使用?

我还没有准备好进入 Angular 2,但我想处理他们的新路由器和组件。

作为背景,我在 Google App Engine 上使用了一个 Python 实例,该实例将 Endpoints 与 Angular 结合使用。

如何使用 AngularJS 1.5 的组件路由器在有和没有经过身份验证的用户的情况下提供 html?我想尽可能以最“有角度的方式”来实现这一点。当前的文档在我身上丢失了。

0 投票
1 回答
611 浏览

angularjs - $http 服务成功回调中未定义 Angular 1.5 范围变量

鉴于以下 Angular 1.5 组件控制器...

我正在尝试将一批 AJAX 查询结果返回到它们正确的相应表单对象。似乎 this.myVarArray 在 $http 服务成功回调的上下文中是未定义的。为什么是这样?这是 Angular 的怪癖还是 Javascript 本身的怪癖?我知道 $http 服务返回一个承诺,但这应该在回调的上下文中解决。为什么 myVarArray 未定义?

非常感谢您的任何见解。

编辑:修复了我的示例代码... :)

0 投票
2 回答
3004 浏览

angularjs - 根路由器上的 Angular 1.5 $routerOnActivate

如果用户未登录,我想确保用户在继续访问他/她尝试访问的任何组件之前正确登录。发送他们登录。

我的想法是$routerOnActivate在根路由器中进行检查。对我来说,这可以解决任何子路线的问题。

但是,如果我只是尝试记录一些东西,似乎什么也没有发生。例子:

this.$routerOnActivate如果我将它放在 routeConfig 中指定的任何组件中,则相同的代码可以工作。但是显然我不想在每个组件中进行相同的检查,而是在全局范围内解决一次。

1.5的方法是什么?

0 投票
2 回答
415 浏览

angularjs - 新的 Angular 1 组件路由器 - 突出显示与活动路由关联的链接

我有一个带有两个链接的导航栏:

我想突出显示与活动路线关联的链接。本质上,我想添加一个名为router-link-active上述两个链接之一的类。对于新的 Angular 1 组件路由器,最简单的方法是什么?

0 投票
0 回答
285 浏览

angularjs - AngularJS不同的子组件与子路由

新手使用 AngularJS 1.5 和 ES6、基于组件的设计和新的组件路由器。

让我们考虑一个简单的调查应用程序。任何给定的调查都有说明页面和问题列表。

当最终用户访问给定的调查时,必须向他显示说明页面。然后,他必须浏览可能跨越数页的不同问题。到达最后一个问题页面后,必须向他显示一个包含所有答案的摘要页面。

理想情况下,我希望有以下路线映射:

  • /surveys/:id: 别名/surveys/:id/instructions
  • /surveys/:id/instructions:显示调查说明
  • /surveys/:id/entry:显示最终用户输入的调查
  • /surveys/:id/summary:显示最终用户输入的所有调查答案的摘要

理想情况下,SurveyComponent(mapped to /surveys/:id) 将在路由激活 ( 方法) 时加载调查,并通过其模板标签$onRouterActivate将检索到的调查公开给其子组件。<ng-outlet/>映射到正确子路线的子组件然后将绑定到此调查并呈现适当的显示。

我一直无法实现这一点,因为它似乎<ng-outlet/>不能用于向子组件发送数据。

我的方法是否正确,我是否遗漏了什么?或者路由/子路由机制不适合这个?

0 投票
0 回答
162 浏览

javascript - Angular 1.5 组件路由器浏览器历史问题

我将 angular 1.5.x 与组件组件路由器一起使用。

我的网络应用程序(不使用角度)可以通过链接访问我的角度应用程序。

当我进入我的角度应用程序时,我被困在其中,即使历史记录“正常”,浏览器(chrome)后退按钮也不起作用 - >我通过右键单击后退按钮看到非角度应用程序 url 存在,我可以点击它,我被重定向。但是按钮停留在最后一个历史条目上,应用程序...

我见过很多关于 pushState / replaceState 的解决方案,但我无法让它与这个组件路由器一起工作(因为我可以使用 ng-outlet 页面内视图)。

更多解释:

应用程序路由有一个useAsDefault到设置的路由,而设置有一个useAsDefault到用户的路由。

除了主视图更改之外,我不想保存某些路线的历史记录,并想办法返回到非角度应用程序。

你能帮我找到好方法吗?

谢谢你。

0 投票
1 回答
233 浏览

angularjs - (可路由组件)具有相邻详细信息窗格的数据树

我们正在构建一个 Angular 2 应用程序,它有一个导航树(左侧)和一个相邻的详细信息窗格(右侧)。

我想在同一个细节区域中渲染大约 20-30 个不同的组件,具体取决于选择树上的哪个节点。

要将许多组件发送到同一个组件,RouterOutlet我似乎必须将所有这些组件加载到定义插座的同一个父组件中;我不希望有这样一个单一的顶级组件。

如果不清楚,其余部分将更详细地描述我的场景,然后在最后重申相同的问题。

树一次只能选择一个节点。选择一个节点后,所有其他非父节点都将关闭,并且所选节点的子节点列表通过网络加载并显示在所选节点下方。与所选节点相关的详细信息也通过网络加载,并呈现在共享的右窗格区域中,替换之前显示在那里的任何其他信息。

不同的节点代表不同的应用特征,包含不同的实体类型。因此,树的各个节点都需要:

  • 不同的子模板/组件来扩展子树(一些树节点枚举联系人姓名,其他包含约会等)
  • 详细信息窗格中加载的不同模板/组件

这是一个例子:

  • 约会
    • 乔上午 11 点
    • 凌晨 12 点苏
  • 人们
    • 乔·史密斯
    • 苏莉(选择)
      • 3天前
      • 5天前

详细信息面板将显示有关 Sue Li 的信息。

我们目前正在使用我们的主要路线来操作这棵树。在渲染其可路由组件之前,我们调用CanActivate以等待子节点的数据被解析。然后我们在渲染后立即操作 DOM 将节点嫁接到树上。这棵树自己工作。我喜欢应用程序的主 URL 导航是由路由树驱动的。尽管我欢迎其他建议。

我们正在尝试使用 Aux Routes 来显示正确的详细信息窗格模板。相关的树节点了解如何使用简单的辅助路由“启动”正确的详细信息窗格。但是,我们有两个问题:

  1. Aux Routes 不支持CanActivate,所以@Resolve在 Angular 2 中提供装饰器之前,我们不能轻易延迟渲染 Aux 组件直到数据被解析。这是一个低优先级的问题,因为它将在 Angular 版本中得到修复。

  2. 所有详细的 Aux 组件都必须加载到一个父组件中,因此它们每个都可以覆盖相同的父 Aux RouterOutlet。还有另一种不需要如此庞大的顶级组件的方法吗?

0 投票
1 回答
307 浏览

angularjs - 无法让角度组件路由器处理组件的延迟加载

大家好,stackoverflowers,我已经尝试了一段时间,但没有成功使用新的组件路由器(ngComponentRouter)实现角度组件的延迟加载。这是我用于配置主要组件的代码:

我的第一个问题是我无法让它与注入加载器属性的 ocLazyLoad 一起工作,所以我将它加载到主控制器中并在加载器属性中引用它。在那之后,当我终于让它在加载器属性中工作时,我似乎无法让它真正加载组件,我一直收到这个错误:

现在我明白我显然在加载程序中做错了,我需要以某种方式注册组件。但我找不到任何关于加载器的角度文档,也没有其他人使用新路由器延迟加载组件,所以我真的不知道如何实现这一点。

我真的很感激这方面的一些帮助,但我通常也想知道使用角度组件路由器是否为时过早,因为它缺乏文档和支持。所以我真的很想听听其他有经验的 Angular 程序员对此事的看法。

编辑:有人对此事有任何见解吗?

0 投票
0 回答
81 浏览

javascript - AngularJS 组件不允许注入 Lifestyle Hook

我使用 Angular 1.5 并在组件结构中构建应用程序。Unknown Provider当我尝试注入钩子时出现错误$canActivate(这不应该发生)所以代码如下:

如果这有什么不同,我正在运行 Angular 1.5.3?如果我不注入 Hook,那么它运行得很好。我很想知道人们的想法:)

0 投票
0 回答
336 浏览

angular - 实现路由变化时平滑的组件过渡动画

Angular2 RC-1中路由变化时如何实现平滑的组件过渡动画?

我正在使用角度组件路由器(不是已弃用的路由器)。

我对 angular2 和 typescript 相当陌生。对Angular1.x有一定的经验