首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Angular 2 TypeScript 环境配置(下)

Angular 2 TypeScript 环境配置(下)

原创
作者头像
陈不成i
修改2021-07-26 18:06:52
修改2021-07-26 18:06:52
1.9K0
举报
文章被收录于专栏:ops技术分享ops技术分享

第二步:创建应用

我们用 NgModules 把 Angular 应用组织成了一些功能相关的代码块。

Angular 本身是被拆成一些独立的 Angular 模块,这样我们在应用中只需要导入需要的 Angular 部分。

每个 Angular 应用至少需要一个root module(根模块) ,实例中为 AppModule 。

接下来我们在 angular-quickstart 目录下创建 app 目录:

代码语言:javascript
复制
$ mkdir app
$ cd app

然后在 app 目录下创建 app.module.ts 文件,代码如下所示

代码语言:javascript
复制
import { NgModule }      from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
 
@NgModule({
  imports:      [ BrowserModule ]
})
export class AppModule { }

由于 QuickStart 是一个运行在浏览器中的 Web 应用,所以根模块需要从 @angular/platform-browser 中导入 BrowserModule 并添加到 imports 数组中。

创建组件并添加到应用中

每个 Angular 应用都至少有一个根组件, 实例中为 AppComponent,app.component.ts 文件代码如下:

代码语言:javascript
复制
import { Component } from '@angular/core';
@Component({
  selector: 'my-app',
  template: '<h1>我的第一个 Angular 应用</h1>'
})
export class AppComponent { }

代码解析:

  • 以上代码从 angular2/core 引入了 Component 包。
  • @Component 是 Angular 2 的装饰器 ,它会把一份元数据关联到 AppComponent 组件类上。
  • my-app 是一个 CSS 选择器,可用在 HTML 标签中,作为一个组件使用。
  • @view 包含了一个 template ,告诉 Angular 如何渲染该组件的视图。
  • export 指定了组件可以在文件外使用。

接下来我们重新打开 app.module.ts 文件,导入新的 AppComponent ,并把它添加到 NgModule 装饰器的 declarations 和 bootstrap 字段中:

代码语言:javascript
复制
import { NgModule }      from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent }   from './app.component';
@NgModule({
  imports:      [ BrowserModule ],
  declarations: [ AppComponent ],
  bootstrap:    [ AppComponent ]
})
export class AppModule { }

第四部:启动应用

接下来我们需要告诉 Angular 如何启动应用。

在 angular-quickstart/app 目录下创建 main.ts 文件,代码如下所示:

main.ts 文件:

import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app.module'; const platform = platformBrowserDynamic(); platform.bootstrapModule(AppModule);

以上代码初始化了平台,让你的代码可以运行,然后在该平台上启动你的 AppModule。


定义该应用的宿主页面

在 angular-quickstart 目录下创建 index.html 文件,代码如下所示:

index.html 文件:

代码语言:javascript
复制
<html> <head> <title>Angular 2 实例 - 菜鸟教程(runoob.com)</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="styles.css"> <!-- 1. 载入库 --> <!-- IE 需要 polyfill --> <script src="node_modules/core-js/client/shim.min.js"></script> <script src="node_modules/zone.js/dist/zone.js"></script> <script src="node_modules/reflect-metadata/Reflect.js"></script> <script src="node_modules/systemjs/dist/system.src.js"></script> <!-- 2. 配置 SystemJS --> <script src="systemjs.config.js"></script> <script>       System.import('app').catch(function(err){ console.error(err); });     </script> </head> <!-- 3. 显示应用 --> <body> <my-app>Loading...</my-app> </body> </html>

这里值得注意的地方有:

  • JavaScript 库: core-js 是为老式浏览器提供的填充库, zone.jsreflect-metadata 库是 Angular 需要的,而 SystemJS 库是用来做模块加载的。
  • SystemJS 的配置文件和脚本,可以导入并运行了我们刚刚在 main 文件中写的 app 模块。
  • <my-app> 标签是应用载入的地方

添加一些样式

我们可以在 angular-quickstart 目录的 styles.css 文件中设置我们需要的样式:

styles.css 文件:

/* Master Styles */ h1 { color: #369; font-family: Arial, Helvetica, sans-serif; font-size: 250%; } h2, h3 { color: #444; font-family: Arial, Helvetica, sans-serif; font-weight: lighter; } body { margin: 2em; }


第六步:编译并运行应用程序

打开终端窗口,输入以下命令:

代码语言:javascript
复制
npm start

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第二步:创建应用
    • 创建组件并添加到应用中
  • 第四部:启动应用
  • main.ts 文件:
  • 定义该应用的宿主页面
  • index.html 文件:
    • 添加一些样式
  • styles.css 文件:
  • 第六步:编译并运行应用程序
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档