angular,vue,react的基本语法—双向数据绑定、条件渲染、列表渲染、angular小案例
基本语法:
1、双向数据绑定
vue
指令:v-model="msg"
react
constructor(){
this.state{
msg:"双向数据绑定"
}
render(){
<input type="text" value={this.state.msg} onChange={(ev)=>this.handleChange(ev)} />{msg}
}
handleChange(ev){
this.setState({
msg:ev.target.value
})
}
angular --ngMel(属性型指令)
app.Module.ts:
import FromsModule from "@angular/froms"; app.component.ts:
export class Appcomponent{
msg:"双向数据绑定"
} app.components.html:
<input [(ngModel)]="msg" />{{msg}}
2、条件渲染:
vue
指令:
v-if v-else-if v-else v-show
react
使用三目(三联)运算:{true ? x:y}
angular ---*ngIf(结构型指令)
指令:*ngIf 没有else指令
如果想要else,要使用ng-template
demo:
<div *ngIf="isShow else elseBack">aaaaaaaaaaaaaaaaaaa</div>
<ng-template #elseBack>ddddddddddddddd</ng-template> ng-template:模板
3、列表渲染:
vue
指令:v-for
<li v-for="item,index in list" key="index">{{item}}</li>
react
this.state.list.map((item)=>{
return <li key="item.id">{item}</li>
})
angular
指令:*ngFor <ul>
<li *ngFor="let item of list,let i=index">{{i}},{{item}}</li>
</ul> <ul>
<li *ngFor="let item of list,index as i">{{i}},{{item}}</li>
</ul> 指令:ngSwitch //多行选择 js:
nowSwitch=1;
listSwitch=[1,2,3]; html:
<div [ngSwitch]="nowSwitch"> //nowSwitch是什么值。就显示值为其的ngSwitchCase.
<div *ngFor="let item of listSwitch"><div *ngSwitchCase="item">{{item}}</div></div>
</div>
angular小案例:Todos
app.component.html: <input type="text" [(ngModel)]="info" (keydown)="handleAdd($event)" > //输入框
<ul>
<li *ngFor="let item of list,index as i">
{{i}},{{item}} <button (click)="handleRemove(i)">X</button>
</li> //显示列表
</ul> app.component.ts: export class AppComponent {
list:Array<any>=[111,222,333]; //加入数据的数组
info=""; //数据绑定变量
handleAdd(ev){ //添加数据的方法
if(ev.keyCode===13) {
this.list.unshift(this.info);
this.info = "";
}
} handleRemove(index){ //删除数据的方法
this.list.splice(index,1);
}
}
angular,vue,react的基本语法—双向数据绑定、条件渲染、列表渲染、angular小案例的更多相关文章
- angular,vue,react的基本语法—样式处理
基本语法 样式处理: vue: 动态属性: v-bind:class 简写 :class react: 变量:class={selecter} angular: 指令:[ngClass]=" ...
- angular,vue,react的基本语法—动态属性、事件绑定、ref,angular组件创建方式
基本语法: 动态属性: vue: v-bind:attr="msg" :attr="msg" react: attr={msg} angular [attr]= ...
- angular,vue,react的基本语法—插值表达式,渲染数据,响应式数据
基本语法: 1.插值表达式: vue:{{}} react:{} angular:{{}} 2.渲染数据 vue js: export default{ data(){ return{ msg:&qu ...
- 2015前端各大框架比较(angular,vue,react,ant)
前端流行框架大比拼 angular vue react ant-design angularjs angular是个MVVM的框架.针对的是MVVM这整个事.angular的最主要的场景就是单页应用, ...
- 前端三大框架(Angular Vue React)
前端,HTML(超文本标记语言),CSS(层叠样式表)和JavaScript(脚本语言) HTML,通常说的h5,其实按标准来说,HTML4的后续版本不带编号了,并保证向前的兼容性 CSS的版本3,增 ...
- Angular Vue React 框架中的 CSS
框架中的 CSS Angular Vue React 三大框架 Angular Vue 内置样式集成 React 一些业界实践 Angular Angular . js (1.x):没有样式集成能力 ...
- 【vue2】Style和Class,条件,列表渲染,双向数据绑定,事件处理
目录 1.style和class 2. 条件渲染 2.1 指令 2.2 案例 3. 列表渲染 3.1 v-for:放在标签上,可以循环显示多个此标签 3.2 v-for 循环数组,循环字符串,数字,对 ...
- angular vue react web前端三大主流框架的对比
首先,我们先了解什么是MVX框架模式? MVX框架模式:MVC+MVP+MVVM 1.MVC:Model(模型)+View(视图)+controller(控制器),主要是基于分层的目的,让彼此的职责分 ...
- Vue指令之`v-model`和`双向数据绑定
v-bind 只能实现数据的单向绑定,从 M 自动绑定到 V, 无法实现数据的双向绑定 <input type="text" v-bind:value="msg& ...
随机推荐
- 使用npm安装appium时的坑
使用命令安装appium 命令安装 npm install -g appium(如果安装失败那么就指定国内的淘宝源安装吧,官方源我应该试了n次费了很大劲才安装成功) 指定淘宝源安装:设置 npm 淘宝 ...
- EMM386和UMBPCI 区别
EMM386和UMBPCI 区别 1,SupportCD-ROM[HIMEM+EMM386NOEMS].支持光驱(EMM386模式)2,SupportCD-ROM[HIMEM+UMBPCI].支持光驱 ...
- MT【269】含参函数绝对值最大
设函数$f(x)=ax^2+(2b+1)x-a-2$($a,b\in\mathcal R$,$a\neq 0$). (1) 若$a=-2$,求函数$y=|f(x)|$在$[0,1]$上的最大值$M(b ...
- 「UVA10766」Organising the Organisation(生成树计数)
BUPT 2017 Summer Training (for 16) #6C 题意 n个点,完全图减去m条边,求生成树个数. 题解 注意可能会给重边. 然后就是生成树计数了. 代码 #include ...
- 「POJ 1135」Domino Effect(dfs)
BUPT 2017 Summer Training (for 16) #3G 题意 摆好的多米诺牌中有n个关键牌,两个关键牌之间有边代表它们之间有一排多米诺牌.从1号关键牌开始推倒,问最后倒下的牌在哪 ...
- Hdoj 1548.A strange lift 题解
Problem Description There is a strange lift.The lift can stop can at every floor as you want, and th ...
- Centos7安装OpenDCIM-19.01步骤
Centos7安装OpenDCIM-19.01步骤 openDCIM是一款免费的开源解决方案,用于管理数据中心基础设施.它已经被几家企业组织所使用,由于开发人员的不懈努力,正在迅速完善. openDC ...
- 【BZOJ5211】[ZJOI2018]线图(树哈希,动态规划)
[BZOJ5211][ZJOI2018]线图(树哈希,动态规划) 题面 BZOJ 洛谷 题解 吉老师的题目是真的神仙啊. 去年去现场这题似乎骗了\(20\)分就滚粗了? 首先\(k=2\)直接算\(k ...
- bzoj3959(LCT)
题目描述 某校开展了同学们喜闻乐见的阳光长跑活动.为了能“为祖国健康工作五十年”,同学们纷纷离开寝室,离开教室,离开实验室,到操场参加3000米长跑运动.一时间操场上熙熙攘攘,摩肩接踵,盛况空前. 为 ...
- return break continue的区别 js java
return :结束函数的执行, return后面的所有代码都不再执行 break: 结束循环, 执行循环后面的代码(如果有的话) continue: 结束本次循环, 循环变量继续递增或递减, 开始下 ...