AngularJS之双向数据绑定,class绑定
之前一直都是用vue来完成一些日常开发,初入AngularJS,记录一些日常开发遇到的问题。
1、双向数据绑定
AngularJS与vue的区别在于,vue采用的是虚拟DOM,模板文件上绑定的一大堆指定指令什么的,最终并不会被编译到HTML DOM中,而AngularJS模板文件中编写的指令会切实存在HTML DOM中,作为元素的一个属性。这一点就决定了再vue中动态绑定v-model的方式为首先初始化好数据,然后再动态匹配,无法通过操纵元素属性的方式来实现:
<el-input v-if="item.type==='input'" :type="item.inputType" v-model='formData[item.id]'
autocomplete="off" :placeholder="item.placeholder ? item.placeholder : ''"></el-input>
在AngularJS中,可以通过手动设置元素属性,然后再编译成AngularJS元素,具体实现如下:
angular.element($input).attr('ng-model', inputModel);
$compile(angular.element($input))($scope);
2、class绑定
vue比较通俗易懂,直接:class={classA:true/fasle,classB: true/false};
AngularJS中,就有点区别了,true/false的class名用空格分开,根据中括号里面的判断条件的真假来决定显示的class,具体实现如下:
ng-class="{true:'fa fa-angle-up',false:'fa fa-angle-down'}[menu.orderManager]"
[]中的表达式是判断条件
AngularJS之双向数据绑定,class绑定的更多相关文章
- angularJs:双向数据绑定
示例1 <!DOCTYPE html> <html ng-app> <head> <meta charset="UTF-8" /> ...
- angularjs的双向数据绑定
数据绑定有两个方向: 数据 → 界面:我们使用scope对象的$watch()方法监听数据的变化,来更新界面. <html> <head> <title>监听数据& ...
- angularJS 的双向数据绑定
input 里面的vale="变量名";加上ng-model="变量名";控制器的变量名会根据视图层的数据改变而改变,而渲染内容也会根据控制器里面的变量改变而改 ...
- Vue学习之vue属性绑定和双向数据绑定
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Angularjs1.X进阶笔记(1)—两种不同的双向数据绑定
一. html与Controller中的双向数据绑定 html-Controller的双向数据绑定,在开发中非常常见,也是Angularjs1.x的宣传点之一,使用中并没有太多问题. 1.1数据从ht ...
- angularJs的一次性数据绑定:双冒号::
angularJs 中双冒号 ::来实现一次性数据绑定. 原文: https://blog.csdn.net/qianxing111/article/details/79971544 -------- ...
- AngularJS入门心得2——何为双向数据绑定
前言:谁说Test工作比较轻松,最近在熟悉几个case,差点没疯.最近又是断断续续的看我的AngularJS,总觉得自己还是没有入门,可能是自己欠前端的东西太多了,看不了几行代码就有几个常用函数不熟悉 ...
- Vue、AngularJS 双向数据绑定解剖
数据与视图的绑定与同步,最终体现在对数据的读写处理过程中,也就是 Object.defineProperty() 定义的数据 set.get 函数中.Vue 中对于的函数为 defineReactiv ...
- angularjs探秘<四> 双向数据绑定
双向数据绑定是angularjs的一大特性,这个特性在实际开发中省了不少事儿.之前第二篇提过数据绑定,这一篇从实际开发的案例中具体看下双向数据绑定的便捷. 首先看一个场景: 在 注册/登录 中经常遇到 ...
随机推荐
- Django开发笔记六
Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.登录功能完善 登录成功应该是重定向到首页,而不是转发 ...
- MAC上mongodb连接不上
1.在Mac客户端里输入 mongo,发现mongo连接不上了,原因是mongo的服务没有开启. 2.在命令行了输入 mongod,开启服务的命令 3.启动起来以后,用mongo连接服务器.
- Linux文件系统2---VFS的四个主要对象
1.引言 本文所述关于文件管理的系列文章主要是对陈莉君老师所讲述的文件系统管理知识讲座的整理. Linux可以支持不同的文件系统,它源于unix文件系统,也是unix文件系统的一大特色. Linux文 ...
- kindle转换工具-calibre
kindle转换工具 calibre https://calibre-ebook.com/download_windows
- vue中遇到的坑!!!!!
一 .vue安装的坑 报错时的常见问题 1.cnpm install 模块名 –save-dev(关于环境的,表现为npm run dev 启动不了)cnpm install 模块名 –save(关于 ...
- Salt Document学习笔记1
原文来自Salt Documentation,作者是 Thomas Hatch),我摘抄部分可能今后会用到或适合入门到精通的一些原文段落,简单翻译后发上来,便于查阅和研究 一.原理方面:The net ...
- 如何查看centos系统cpu/内存使用情况
1.查看硬盘 [mushme@investide ~]$ df -ah 文件系统 容量 已用 可用 已用% 挂载点 /dev/cciss/c0d0p1 123G ...
- 如何把JS对象转成数组
1. 前言 首先,当JS对象是键值对的情况时(Json对象),因为数组时以数字为索引的,所以只能把JS对象中的Key或者Value组成数组使用. 2. 样例如下: var obj={"one ...
- OCM_第八天课程:Section4 —》数据管理
注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...
- VeeValidate配置中文的两种方法
使用VeeValidate时遇到的问题,下面是我找到的一些解决办法: VeeValidate一直报错早不到addlocale方法 解决办法:1.卸载掉当前版本,重新安装低版本如2.0.0-rc.25 ...