Angular教程 - 企业级前端框架
Angular是由Google维护的一款完整的前端开发框架。它基于TypeScript,内置了路由、表单、HTTP、依赖注入等完整功能,适合构建大型企业级应用。本教程将从核心概念到实战开发,助你全面掌握Angular。
一、Angular简介
Angular(Angular 2+)于2016年发布,是AngularJS的重写版本。与Vue和React不同,Angular是一个"大而全"的框架,提供了开发大型应用所需的所有工具。它使用TypeScript作为首选语言,强类型和面向对象特性让代码更健壮。
| 特性 | 描述 |
|---|---|
| TypeScript | 原生支持TS,类型安全 |
| 依赖注入 | 内置DI容器,便于测试和复用 |
| 完整框架 | 内置路由、表单、HTTP等模块 |
| RxJS | 响应式编程处理异步数据流 |
二、你将学到什么
- 核心概念:模块NgModule、组件Component、模板
- 数据绑定:插值、属性绑定、事件绑定、双向绑定
- 指令:结构指令(*ngIf/*ngFor)、属性指令
- 服务与DI:Service服务、依赖注入、Provider
- 路由:路由配置、路由参数、路由守卫、懒加载
- 表单:模板驱动表单、响应式表单、表单验证
三、代码示例
Angular组件与服务示例:
// user.component.ts - 组件
import { Component, OnInit } from "@angular/core";
import { UserService } from "./user.service";
import { User } from "./user.model";
@Component({
selector: "app-user-list",
template: `
<h2>用户列表</h2>
<input [(ngModel)]="searchText" placeholder="搜索用户" />
<ul>
<li *ngFor="let user of filteredUsers"
(click)="selectUser(user)"
[class.selected]="user === selectedUser">
{{ user.name }} ({{ user.email }})
</li>
</ul>
<div *ngIf="selectedUser">
<h3>{{ selectedUser.name }}</h3>
<p>邮箱: {{ selectedUser.email }}</p>
</div>
`,
styles: [".selected { background: #e0f7fa; }"]
})
export class UserListComponent implements OnInit {
users: User[] = [];
selectedUser: User | null = null;
searchText = "";
constructor(private userService: UserService) {}
ngOnInit() {
this.userService.getUsers().subscribe(
data => this.users = data
);
}
get filteredUsers(): User[] {
return this.users.filter(u =>
u.name.toLowerCase().includes(this.searchText.toLowerCase())
);
}
selectUser(user: User) {
this.selectedUser = user;
}
}
// user.service.ts - 服务(依赖注入)
import { Injectable } from "@angular/core";
import { HttpClient } from "@angular/common/http";
import { Observable } from "rxjs";
import { User } from "./user.model";
@Injectable({
providedIn: "root"
})
export class UserService {
private apiUrl = "/api/users";
constructor(private http: HttpClient) {}
getUsers(): Observable<User[]> {
return this.http.get<User[]>(this.apiUrl);
}
}
四、适合人群
- 有TypeScript基础的开发者
- 想要从事企业级前端开发的工程师
- 需要构建大型、复杂前端应用的团队
- 有Java/C#后端背景,转前端开发者(Angular的DI理念类似Spring)
五、学习建议
Angular学习曲线较陡,建议先掌握TypeScript再学Angular。重点理解模块、组件、依赖注入和服务的概念。RxJS是Angular处理异步的核心,需要专门学习。Angular CLI是开发利器,熟悉各种命令能提升效率。官方文档和Angular University是很好的学习资源。
🎯 开始你的Angular学习之旅吧!
课程信息:
共 5 个章节
暂无内容