Самозагрузка угловая 2
Я смотрел некоторые учебники по Angular 2. Я запутался в компонентах начальной загрузки. Если я хочу создать многостраничные приложения, и мне не нужен этот корневой компонент, как мне это сделать? Я вижу, как это будет работать для одностраничных приложений.
Это мой файл Main.Ts.
import { bootstrap } from 'angular2/platform/browser';
import { AppComponent } from './app.component';
bootstrap(AppComponent);
Вот мой файл app.component.ts.
import {Component} from 'angular2/core';
@Component({
selector: 'pm-app',
template: '<h1>{{PageTitle}}</h1>'
})
export class AppComponent {
PageTitle: string = "Test";
}
Если бы я хотел перейти на страницу, отличную от, скажем, index.html, и чтобы она загружала другой компонент без добавления AppComponent, как бы я поступил так? В Angular 1+ это было легко, поскольку я просто ссылался на контроллер на HTML-странице, которую я хотел использовать. Как бы я просто сослаться на компонент, который я хочу использовать на другой странице?
Благодарю. Попытка обернуть мою голову вокруг углового 2.
2 ответа
Некоторым компонентом всегда должен быть этот корневой компонент.
Нет необходимости, чтобы это всегда был один и тот же компонент. Вы также можете загрузить несколько компонентов на одной странице, но каждое приложение Angular2 запускается с определенного элемента, и это корневой компонент, который инициализируется с помощью
@NgModel({
...
bootstrap: [AppComponent]
})
Представление этого элемента может содержать другие элементы и директивы, которые составляют целое приложение.
Angular 2 очень хорош в загрузке компонента, и поэтому он в 5 раз быстрее, чем в Angular 1. IT не загружает все компоненты за один раз. Он загружает требуемый компонент только в качестве концепции отложенной загрузки. Для динамической загрузки используется функция Systemjs, а также может использоваться Webpack.
Angular 2 имеет модульную конструкцию, поэтому, если в вашем приложении много модулей. Вы можете создать несколько модулей и связать все модули в один корневой модуль.
Тогда вы можете использовать угловую функцию 2 маршрутизации. Какая загрузка необходимого модуля в зависимости от того, по какому маршруту щелкнул пользователь.
Вы можете узнать маршрутизацию в глубине отсюда
https://angular.io/docs/ts/latest/guide/router.html