上一节中,我们学习了基本的环境搭建:nodeJs、npm、VSCode、AngularCli9的安装。 如果你顺利地都安装成功了,那么我们可以开始进行系统的构建和开发了,如果我们采用TypeScript,则我们还需要安装TypeScript支持。 本节内容中,我们会学会安装TypeScript,然后创建一个Angular工程,并尝试启动。 1、使用如下命令安装: -g 参数代表着该模块是全局的。全局是相对于当前某个工程而言的。 2、安装完成后我们可以使用 tsc 命令来执行 TypeScript 的相关代码,以下是查看版本号: 3、我们可以测试一下TypeScript,建立一个app.ts 文件,内容如下。 TypeScript脚本文件的扩展名即.ts 后执行以下命令将 TypeScript 转换为 JavaScript 代码: 执行完成,当前目录下(与 app.ts 同一目录)就会生成一个 app.js 文件,代码如下: 然后使用 node 命令来执行 app.js 文件,则会输出 Hello world: 至此,TypeScript安装成功。 1、我们利用AngularCli 可以方便的创建工程,仅仅需要一行命令: 假设我们要在D盘,ECMS目录下建立我们的工程ecms-web,则启动CMD命令行,切换到D:\ECMS,然后输入我们的命令ng new ecms-web即可,也可以,在VSCode的终端中输入,由于要生成文件可能需要管理员权限运行命令行工具: 以上是整个过程。 在我们输入完命令,回车后,会有两个选项供我们选择: would you like to add Angular routing? 我们输入y,回车。 ? Which stylesheet format would you like to use? 直接回车,默认选择css。您也可以按上下箭头键,选择其他的css样式文件格式。 然后,AngularCli 会为我们创建一个基本的包含路由的Angular工程。 2、我们启动工程 我们进入刚刚创建的工程目录,然后执行如下命令: 首次运行,会提示我们是否匿名分享数据,我们输入n,回车即可。 过程如下: 启动后,屏幕会提示如下内容: 此时我们打开浏览器输入http://localhost:4200/,即可查看默认的页面 我们可以看到网站的标题就是我们的工程名称:EcmsWeb。 至此我们的基本工程已经建立起来了。 如果ng serve 启动时提示端口已经被占用,我们使用如下命令指定端口启动: 我们看一下建立的工程目录结构 详细介绍如下: 首层目录: src目录: 这些文件和目录,我们有个大概了解即可。随后的开发过程中,如果用到那个,我们再详细介绍。 本节教程,我们学习了安装TypeScript的安装以及验证,然后学习了如何建立一个Angular工程,以及如何启动和浏览工程。最后简单介绍了工程的目录结构情况。Angular9构建一个后台管理系统(二)
1. 前言
2. 安装TypeScript
npm install -g typescript
tsc -v
var message:string = "Hello World"
console.log(message)
tsc app.ts
var message = "Hello World";
console.log(message);
D:\>node app.js
Hello World
3. 创建Angular工程
ng new my-app
Microsoft Windows [版本 10.0.18363.836]
(c) 2019 Microsoft Corporation。保留所有权利。
C:\Windows\system32>d:
D:\>cd ECMS
D:\ECMS>dir
驱动器 D 中的卷没有标签。
卷的序列号是 9C30-21F8
D:\ECMS 的目录
2021/03/12 14:40 <DIR> .
2021/03/12 14:40 <DIR> ..
0 个文件 0 字节
2 个目录 48,212,746,240 可用字节
D:\ECMS>ng new ecms-web
? Would you like to add Angular routing? Yes
? Which stylesheet format would you like to use? CSS
CREATE ecms-web/angular.json (3582 bytes)
CREATE ecms-web/package.json (1252 bytes)
CREATE ecms-web/README.md (1025 bytes)
CREATE ecms-web/tsconfig.json (489 bytes)
CREATE ecms-web/tslint.json (3125 bytes)
CREATE ecms-web/.editorconfig (274 bytes)
CREATE ecms-web/.gitignore (631 bytes)
CREATE ecms-web/browserslist (429 bytes)
CREATE ecms-web/karma.conf.js (1020 bytes)
CREATE ecms-web/tsconfig.app.json (210 bytes)
CREATE ecms-web/tsconfig.spec.json (270 bytes)
CREATE ecms-web/src/favicon.ico (948 bytes)
CREATE ecms-web/src/index.html (293 bytes)
CREATE ecms-web/src/main.ts (372 bytes)
CREATE ecms-web/src/polyfills.ts (2835 bytes)
CREATE ecms-web/src/styles.css (80 bytes)
CREATE ecms-web/src/test.ts (753 bytes)
CREATE ecms-web/src/assets/.gitkeep (0 bytes)
CREATE ecms-web/src/environments/environment.prod.ts (51 bytes)
CREATE ecms-web/src/environments/environment.ts (662 bytes)
CREATE ecms-web/src/app/app-routing.module.ts (246 bytes)
CREATE ecms-web/src/app/app.module.ts (393 bytes)
CREATE ecms-web/src/app/app.component.html (25757 bytes)
CREATE ecms-web/src/app/app.component.spec.ts (1065 bytes)
CREATE ecms-web/src/app/app.component.ts (212 bytes)
CREATE ecms-web/src/app/app.component.css (0 bytes)
CREATE ecms-web/e2e/protractor.conf.js (808 bytes)
CREATE ecms-web/e2e/tsconfig.json (214 bytes)
CREATE ecms-web/e2e/src/app.e2e-spec.ts (641 bytes)
CREATE ecms-web/e2e/src/app.po.ts (301 bytes)
√ Packages installed successfully.
warning: LF will be replaced by CRLF in .editorconfig.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in .gitignore.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in README.md.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in angular.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in browserslist.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in e2e/protractor.conf.js.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in e2e/src/app.e2e-spec.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in e2e/src/app.po.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in e2e/tsconfig.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in karma.conf.js.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in package-lock.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in package.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/app/app-routing.module.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/app/app.component.html.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/app/app.component.spec.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/app/app.component.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/app/app.module.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/environments/environment.prod.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/environments/environment.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/index.html.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/main.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/polyfills.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/styles.css.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in src/test.ts.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in tsconfig.app.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in tsconfig.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in tsconfig.spec.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in tslint.json.
The file will have its original line endings in your working directory
Successfully initialized git.
D:\ECMS>
ng serve
D:\ECMS>
D:\ECMS>cd ecms-web
D:\ECMS\ecms-web>dir
D:\ECMS\ecms-web 的目录
2021/03/12 14:44 <DIR> .
2021/03/12 14:44 <DIR> ..
2021/03/12 14:43 274 .editorconfig
2021/03/12 14:43 631 .gitignore
2021/03/12 15:00 3,623 angular.json
2021/03/12 14:43 429 browserslist
2021/03/12 14:43 <DIR> e2e
2021/03/12 14:43 1,020 karma.conf.js
2021/03/12 14:44 <DIR> node_modules
2021/03/12 14:44 536,685 package-lock.json
2021/03/12 14:43 1,252 package.json
2021/03/12 14:43 1,025 README.md
2021/03/12 14:43 <DIR> src
2021/03/12 14:43 210 tsconfig.app.json
2021/03/12 14:43 489 tsconfig.json
2021/03/12 14:43 270 tsconfig.spec.json
2021/03/12 14:43 3,125 tslint.json
12 个文件 549,033 字节
5 个目录 47,722,569,728 可用字节
D:\ECMS\ecms-web>ng serve
Compiling @angular/core : es2015 as esm2015
Compiling @angular/animations : es2015 as esm2015
Compiling @angular/compiler/testing : es2015 as esm2015
Compiling @angular/common : es2015 as esm2015
Compiling @angular/animations/browser : es2015 as esm2015
Compiling @angular/core/testing : es2015 as esm2015
Compiling @angular/platform-browser : es2015 as esm2015
Compiling @angular/common/http : es2015 as esm2015
Compiling @angular/animations/browser/testing : es2015 as esm2015
Compiling @angular/common/testing : es2015 as esm2015
Compiling @angular/router : es2015 as esm2015
Compiling @angular/forms : es2015 as esm2015
Compiling @angular/platform-browser-dynamic : es2015 as esm2015
Compiling @angular/platform-browser/testing : es2015 as esm2015
Compiling @angular/platform-browser/animations : es2015 as esm2015
Compiling @angular/common/http/testing : es2015 as esm2015
Compiling @angular/platform-browser-dynamic/testing : es2015 as esm2015
Compiling @angular/router/testing : es2015 as esm2015
chunk {main} main.js, main.js.map (main) 60.6 kB [initial] [rendered]
chunk {polyfills} polyfills.js, polyfills.js.map (polyfills) 141 kB [initial] [rendered]
chunk {runtime} runtime.js, runtime.js.map (runtime) 6.15 kB [entry] [rendered]
chunk {styles} styles.js, styles.js.map (styles) 12.4 kB [initial] [rendered]
chunk {vendor} vendor.js, vendor.js.map (vendor) 3.01 MB [initial] [rendered]
Date: 2021-03-12T07:01:57.529Z - Hash: 2710539518a87a75e029 - Time: 7501ms
** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
: Compiled successfully.
** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
: Compiled successfully.
ng serve --port 4201
4. 工程概览
5. 小结