Ionic开发文档

声明属性 绑定数据 绑定属性 数据循环

发布时间 2018-5-23 16:11:48   浏览量()   收藏(1)

一、angualr4.0 绑定数据

1、数据文本绑定

{{}}

<h1>
 {{title}}
 </h1>


2、绑定 html

this.h="<h2>这是一个 h2 用[innerHTML]来解析</h2>"
<div [innerHTML]="h"></div>

二、 数据循环 *ngFor 

1、ngFor 普通循环

ul>
 <li *ngFor="let item of list">
 {{item}}
 </li>
 </ul>

2、循环的时候设置 key

<ul>
 <li *ngFor="let item of list;let i = index;">
 {{item}} --{{i}}
 </li>
</ul>


其他复杂list

Html

<ul>
    <li *ngFor="let item of list3; let key=index">

        {{item.title}}---{{key}}
    </li>
</ul>

ts

    this.list3=[

      {'title':'1111111111111111111'},
      {'title':'22222222222222222'},
      {'title':'3333333333333333333'}
    ];





Html

<ul>
    <li *ngFor="let item of list4; let key=index">

        {{item.catename}}---{{key}}

        <ol>
            <li *ngFor="let car of item.list">

               -- {{car.title}}
            </li>
        </ol>
    </li>
</ul>

ts

    this.list4=[

      {
        'catename':"宝马",

        "list":[

          {'title':'宝马x1'},
          {'title':'宝马x3'},
          {'title':'宝马x2'},
          {'title':'宝马x4'},
        ]
    
     } ,{
        'catename':"奥迪",

        "list":[

          {'title':'奥迪q1'},
          {'title':'奥迪q2'},
          {'title':'奥迪q3'},
          {'title':'奥迪q4'},
        ]
    
     },
    ]

3、template 循环数据

<ul>
 <li template="ngFor let item of list">
 {{item}}
 </li>
 </ul>

三、条件判断 *ngIf 

<p *ngIf="list.length > 3">这是 ngIF 判断是否显示</p>
 <p template="ngIf list.length > 3">这是 ngIF 判断是否显示</p>

四、执行事件 (click)=”getData()”

<button class="button" (click)="getData()">
 点击按钮触发事件
 </button>
 
 <button class="button" (click)="setData()">
 点击按钮设置数据
 </button>
getData(){ /*自定义方法获取数据*/
 //获取
 alert(this.msg);
 }
 setData(){
 //设置值
 this.msg='这是设置的值';
 }

五、绑定属性

<div [id]="id" [title]="msg">调试工具看看我的属性</div>

六、表单处理

<input type="text" (keyup)="keyUpFn($event)"/>
 keyUpFn(e){
 console.log(e)
  if(e.keyCode==13){

      alert('按回车了');

    }
 }

七、双向数据绑定 

在文本框输入的值实时变动到ts代码的变量中

<input [(ngModel)]="inputValue">

注意引入:FormsModule

import { FormsModule } from '@angular/forms'; 

@NgModule({
 declarations: [
 AppComponent,
 HeaderComponent,
 FooterComponent,
 NewsComponent
 ],
 imports: [
 BrowserModule,
 FormsModule
 ],
 providers: [],
 bootstrap: [AppComponent]
})
export class AppModule { }

使用

<input type="text" [(ngModel)]="inputValue"/>
 {{inputValue}}

八、Todolist 功能

Html

<input type="text" [(ngModel)]='username'>
<button (click)='addData()'>增加</button>
<ul>
 <li *ngFor="let item of list">
 {{item}}
 </li>
</ul>

ts

export class TodolistComponent implements OnInit {
 list:any[];
 username:any;
 constructor() {
 
 }
 ngOnInit() {
 this.list=[];
 this.username='';
 }
 addData(){
 alert(this.username);
 this.list.push(this.username);
 }
}


广告会让浏览体验不好,可这是网站的唯一收入,请点击下面的百度广告,支持老高的开源行动吧!