标签: angular-component-router

路由器解析器未呈现组件

我有这个路由器解析器,用于从Google Firestore检索数据。我正在尝试使用解析器来预先获取数据。当我将调试器放置在resolve函数上时,它将向我显示从服务器检索的数据。但是它永远不会从resolve()方法返回。谁能帮我一下。

路由模块

const routes: Routes = [
    { path: '', component: HomeComponent},
    { path: 'projects', component: ProjectsComponent, resolve: {projectData: ProjectResolver} },
    { path: 'about', component: AboutComponent}
];
Run Code Online (Sandbox Code Playgroud)

应用模块

  providers: [
    ProjectService,
    ProjectResolver
  ],
Run Code Online (Sandbox Code Playgroud)

解析器服务

import { Observable } from 'rxjs';
import { ActivatedRouteSnapshot, RouterStateSnapshot, Resolve } from '@angular/router';
import { Injectable } from '@angular/core';
import { ProjectService } from './project.service';
import { map } from "rxjs/operators";
import { Project } from './project.model';

@Injectable()
export class ProjectResolver implements Resolve<Project[]> { …
Run Code Online (Sandbox Code Playgroud)

angular-component-router angular angular-resolver

5
推荐指数
1
解决办法
1170
查看次数

从角度2中删除历史记录中的组件

如何限制组件在背压时加载.实际上我有三个组件A(正常组件),B(LoginComponent)和C(Otp验证组件).我在某个按钮点击时从A路由到组件B,从B到C路由到组件B以验证用户.现在在对组件C进行验证之后,我想回到组件'A',并希望从历史记录中删除组件'B'和'C',以便在从浏览器返回时不加载'B'(LoginComponent)和'C'再次.那怎么能在angularjs 2中做到这一点.

typescript angular2-routing angular-component-router angular-components angular

3
推荐指数
1
解决办法
4072
查看次数

如何将路线附加到ng-accordion面板的显示屏上?

我有一个使用*ngFor循环定义的ng-accordion ,我想调整位置并将路径绑定到特定面板的视图.理想情况下,当客户端单击以展开面板时,该位置将在浏览器中更新,并且新的历史记录项将存储在浏览器中.此外,如果客户输入的URL对应于正在显示的特定手风琴项目,我希望确保反映出适当的状态.

例如:

<ngb-accordion closeOthers="true">
  <ngb-panel *ngFor="let faq of faqService.getItems()" id="{{faq.id}}" title="{{faq.title}}">
    <ng-template ngbPanelContent>
      {{faq.body}}
    </ng-template>
  </ngb-panel>
</ngb-accordion>
Run Code Online (Sandbox Code Playgroud)

映射的路由可能是:

/faq/ABCD
/faq/EFGH
/faq/IJKL
Run Code Online (Sandbox Code Playgroud)

切换特定面板将更新位置/ ActiveRoute并粘贴将映射到特定面板的URL将导致该面板被展开.关于如何连线的任何建议?

angular-component-router ng-bootstrap angular

2
推荐指数
1
解决办法
1287
查看次数