有角度的ui路由器2(Angular ui

编程入门 行业动态 更新时间:2024-10-28 04:16:18
有角度的ui路由器2(Angular ui-router 2)

我试图按照链接中描述的方式实现一些多个视图,但无法实现此功能。 这是我做的

import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { HttpModule } from '@angular/http'; import { AppComponent } from './app.component'; import {UIRouterModule} from 'ui-router-ng2'; import { Header } from './routes/header.component'; import { Navigation } from './routes/navigation.component'; import { Content } from './routes/content.component'; let rootState = { name: 'root', url: '/', views: { header: Header, navigation: Navigation, content: Content } }; @NgModule({ declarations: [ AppComponent, Header, Navigation, Content ], imports: [ BrowserModule, UIRouterModule.forRoot({states: [rootState], useHash: true}), FormsModule, HttpModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }

Header , Navigation和Content是我想要显示的三个组件。 目前它们非常简单,看起来与此类似:

import { Component } from '@angular/core' @Component({ templateUrl: './header.component.html' }) export class Header { }

而模板只是一个单词:

header

这里是AppComponent :

import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = "LES.AdministrationDesk" }

和它的模板:

<ui-view name="header"></ui-view> <ui-view name="navigation"></ui-view> <div ui-view="content"></div>

我使用的是AngularJS@2.4.8和iu-router-ng2@1.0.0-beta4

如果ui-router作者会为多个视图提供一些可用的plunker示例,但是我找不到任何内容,那将会容易得多。

I am trying to implement some multiple views as described in the link but cannot get this working. Here is what I do

import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { HttpModule } from '@angular/http'; import { AppComponent } from './app.component'; import {UIRouterModule} from 'ui-router-ng2'; import { Header } from './routes/header.component'; import { Navigation } from './routes/navigation.component'; import { Content } from './routes/content.component'; let rootState = { name: 'root', url: '/', views: { header: Header, navigation: Navigation, content: Content } }; @NgModule({ declarations: [ AppComponent, Header, Navigation, Content ], imports: [ BrowserModule, UIRouterModule.forRoot({states: [rootState], useHash: true}), FormsModule, HttpModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }

Header, Navigation and Content are three components which I want to display. They are very simple as for now and look similar to this:

import { Component } from '@angular/core' @Component({ templateUrl: './header.component.html' }) export class Header { }

and template is just a single word:

header

Here is AppComponent:

import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = "LES.AdministrationDesk" }

and its template:

<ui-view name="header"></ui-view> <ui-view name="navigation"></ui-view> <div ui-view="content"></div>

I'm using AngularJS@2.4.8 and iu-router-ng2@1.0.0-beta4

It would be much easier if the ui-router author would provide some working plunker example for multiple views, but I cannot find any.

最满意答案

只需使用角度2路由器。 使用以前版本的angular与当前版本的组件并不是一个好的决定。

<body> <my-app> <main-header></main-header> <router-outlet></router-outlet> <main-footer></main-footer> </my-app>

举例来说。 主标题和主页脚将始终存在于此应用程序中。 内部组件也很容易实现。 路线配置示例:

export const routes: Routes = [ {path: '', component: HomeView}, {path: 'contactUs', component: ContactUsView}, {path: 'ourService/:id', component: OurServiceView}

]。

Just use angular 2 router. It`s not a good decision to use components from previous version of angular with current version.

<body> <my-app> <main-header></main-header> <router-outlet></router-outlet> <main-footer></main-footer> </my-app>

As for example. Main-header and main-footer will be present in this app all the time. Inner components is easy to implement too. Example of routes configuration:

export const routes: Routes = [ {path: '', component: HomeView}, {path: 'contactUs', component: ContactUsView}, {path: 'ourService/:id', component: OurServiceView}

];

更多推荐

本文发布于:2023-08-05 08:00:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1429725.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:路由器   角度   ui   Angular

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!