angular快速入门教程

angular

安装:

1.安装node.js

2.安装angular

npm i -g @angular/cli

3.创建项目

ng new 项目名

4.文件结构:

e2e:测试目录

src:
{
	index.html:网站主页面
	main.ts:应用主入口
}
src-app: //模块和组件
	{
	app.component.css     //模块/组件的css样式
	app.component.html  //模块/组件的html页面
	app.component.ts    //模块/组件的程序文件
	}

src-assets:  存放静态资源文件

src-environments :环境配置

src-favicon.ico  图标

src-index.html  整个应用的根html

main.ts    整个web应用的入口点,脚本执行的入口点

polyfills.ts导入一些必要的库

styless.css全局样式文件

angular-cli.json  命令行工具的配置文件,

karma ,protractor.conf.js   单元测试的追踪器

package.json  npm配置文件,列明了当前应用所使用的依赖包

tslint.json   tslint的配置文件

5.运行

ng serve --open 或者npm start

组件:

项目根模块:app.module.ts
定义的组件都需要在app.module.ts文件里先进行import引入
然后在@NgModule({deckartions:[]})声明
定义组件模板的两个方式:
1.使用templateurl引用一个html文件
2.使用template +es6的模板字符串
定义组件样式的两个方式:
1.使用styleUrls引用一个css文件
2.使用style +es6的模板字符串

元数据:通过装饰器描述组件

使用命令创建模块

ng g module customers --routing=true

生成的模块文件有个路由文件(customers-routing.modules.ts)和ts(customers.modules.ts)文件

在项目的根路由文件引入模块

const routes: Routes = [
  { path: '', pathMatch: 'full', redirectTo: 'CustomersModule' }, //重定向
  { path: 'CustomersModule',loadChildren:()=>import('./customers/customers.module').then(m=>m.CustomersModule)}
];

使用命令创建组件

先打开需要创建组件的模块,然后进入到模块命令行中,使用命令

ng generate component 组件名 ##只能小写,不能大写

或者缩写

ng g c 组件名 ##只能小写,不能大写

例如 ng g c hello

就会生成一个hello的文件夹,里面有几个文件

我们可以在hello.component.html写一段文字

我是第一个组件

在模块的路由文件里引入组件

import { CustomersChildComponent } from './customers-child/customers-child.component';
import { CustomersHelloComponent } from './customers-hello/customers-hello.component';

const routes: Routes = [
  {path:"",component:CustomersChildComponent},
  {path:"hello",component:CustomersHelloComponent}
];

然后保存,等编辑器重新编译之后,输入刚才模块的路由,就可以显示出来了

http://localhost:4200/CustomersModule      //url地址/模块名称
http://localhost:4200/CustomersModule/hello  //url地址/模块名称/模块里的组件

数据绑定

双向绑定:

需要在根模块引入FormsModule,
然后在import里添加FormsModule,[(ngModel)]=“text”,
父组件到子组件@input(), @input(num) mynum 改名,当名字num重复的时候,可以使用此方法改名
子组件到父组件@Output() change = new EventEmitter(),

@Output(change) changea =new EventEmitter();

改名
属性绑定:class
事件绑定:(click)=“clicked()”,(click)=“click1($event)”
自定义事件:
父组件:<子组件>
子组件:先引入EventEmitter,Output,
然后再获取自定义事件:@Output() myClick=new EventEmitter()
触发自定义事件:

你可能感兴趣的:(angular,angular.js,typescript,javascript)