2017.09.17

Check Out

New

Angular 应用的结构设计

模块、组件、指令、服务

一个angular应用由组件服务以及指令构建的模块组成。

其中:

  • 组件:是构建应用的基本块,包含必备的装饰器、模版和控制器,可选的提供器、生命周期钩子、样式表、动画、输入属性和输出属性,带有基本的功能(能够完成一些业务逻辑)。
  • 服务:是可以完成一些业务逻辑功能的可复用块。
  • 指令:是作用在标签或组件上的功能块。
  • 模块: 是规划和构建好的用于完成相对独立功能的组成块。
// app module
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';

@NgModule({
  decalrations: [
    AppComponent
  ],
  imports: [
    BrowserModule
  ],
  providers: [],
  bootstrap: [
    AppComponent
  ]
})
class AppModule { }
// app module
import { Component } from '@angular/core';
@Component({
  selector: 'app',
  template: '<h1> {{ title }} </h1>',
})
export class AppComponent {
  title: 'app-component'
  constructor() { }
}

Angular 应用的启动过程

  • 即时编译器动态引导
// main.ts
import './polyfills.ts';
// 浏览器动态刷新功能(打包了Angular编译器)
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { enableProdMode } from '@angular/core';
import { enviroment } from './enviroments/enviroment';
import { AppModule } from './app/app.module';

if (enviroment.production) {
  enableProdMode();
}
platformBrowserDynamic().bootstrapModule(AppModule);
  • 预编译静态引导(小,快)
import { platformBrowser } from '@angular/platform-browser';
import { AppModule } from './app/app.module';
platformBrowser().bootstrapModuleFactory(AppModule);

Angular 应用的核心概念

  • 组件
  • 模版
  • 数据绑定
  • 服务
  • 依赖注入
  • 模块

results matching ""

    No results matching ""