如果您对AngularJS学习笔记感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于AngularJS学习笔记的详细内容,我们还将为您解答三数据双向绑定的简单实例的相关问题,并
如果您对AngularJS学习笔记感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于AngularJS学习笔记的详细内容,我们还将为您解答三数据双向绑定的简单实例的相关问题,并且为您提供关于AngularJS 双向数据绑定详解简单实例、AngularJS _AngularJs 双向绑定原理(数据绑定机制)、AngularJS 双向数据绑定详解简单实例、AngularJS 学习笔记 (四) 基本概念和用法 之 双向数据绑定的有价值信息。
本文目录一览:- AngularJS学习笔记(三)数据双向绑定的简单实例(angularjs 双向绑定原理)
- AngularJS 双向数据绑定详解简单实例
- AngularJS _AngularJs 双向绑定原理(数据绑定机制)
- AngularJS 双向数据绑定详解简单实例
- AngularJS 学习笔记 (四) 基本概念和用法 之 双向数据绑定
AngularJS学习笔记(三)数据双向绑定的简单实例(angularjs 双向绑定原理)
双向绑定
双向绑定是AngularJS最实用的功能,它节省了大量的代码,使我们专注于数据和视图,不用浪费大量的代码在Dom监听、数据同步上,关于双向更新,可看下图:
数据-->视图
这里我们只演示有了数据以后,如何绑定到视图上。
<!DOCTYPE html> <html ng-app="App"> <head> <script type="text/javascript" src="http://sandbox.runjs.cn/uploads/rs/394/xjz9g1bv/angular.js"></script> <script type="text/javascript"> var App = angular.module("App", []); App.controller("ctrl", function ($scope) { $scope.username=''张三'' $scope.changename=function(){ $scope.username=''李四''; } }); </script> </head> <body> <div ng-controller ="ctrl"> <buttonbtn btn-primary'' ng-click=''changename();''> username=''李四'' </button> <!--页面加载初期,用户可能会看到绑定的表达式--> <div>{{username}}</div> <!--此绑定不会出现上述情况--> <div ng-bind=''username''></div> </div> </body> </html>
点击按钮之后,div内容变成 李四,效果如图:
视图—>数据
上个例子,我们看了数据变化后,视图也会自动变化。那么这个例子则是反过来,视图变化,导致数据也跟着变化,那么数据变化后,我们如何知道呢,这儿我们可以通过另外一个元素将数据再显示出来。
<!DOCTYPE html> <html ng-app="App"> <head> <script type="text/javascript" src="http://sandbox.runjs.cn/uploads/rs/394/xjz9g1bv/angular.js"></script> <script type="text/javascript"> var App = angular.module("App", []); App.controller("ctrl", function ($scope) { $scope.username=''张三'' }); </script> </head> <body> <div ng-controller ="ctrl"> <input type=''text'' ng-model=''username'' /> <div>{{username}}</div> </div> </body> </html>
查看效果:
实现机制
angular对常用的dom事件,xhr事件等做了封装, 在里面触发进入angular的digest流程。
在digest流程里面, 会从rootscope开始遍历, 检查所有的watcher。
- javascript实现数据双向绑定的三种方式小结
- Vue.js每天必学之数据双向绑定
- 轻松实现javascript数据双向绑定
- 深入学习AngularJS中数据的双向绑定机制
- 浅谈AngularJs 双向绑定原理(数据绑定机制)
- Vue.js第一天学习笔记(数据的双向绑定、常用指令)
- 深入理解Angularjs向指令传递数据双向绑定机制
- JS原生数据双向绑定实现代码
- 实例剖析AngularJS框架中数据的双向绑定运用
- js实现数据双向绑定(访问器监听)
AngularJS 双向数据绑定详解简单实例
angular的双向数据绑定,个人理解是,通过model建立数据模型,那么视图上的数据就会对应存储在angular程序里,视图上的数据变化会同步到model,model的数据改变也会同步到视图。
下面的demo演示:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>hello, AngularJS!</title> <script src="angular.js"></script> </head> <body> <div ng-app> <!-- ng-model指令将表单的value绑定到model的username变量--> <input ng-model="username" type="text" placeholder="请输入..."> <p>Hello, <strong>{{username}}</strong>!</p> </div> </body> </html>
运行结果:程序运行后,在输入框输入文字,下面会与输入框内容同步变化。是不是很惊奇!以前需要写一大段js代码的事情(监听onchange事件,将input的value赋给下面的strong元素),现在只用一个ng-model指令就完成了。Perferct!
案例详解:
1. ng-model指令的作用:建立数据模型,在模型中对应有一个变量username用来存放input元素的value;
2. {{username}}是一个表达式,angular会自动计算该表达式,替换成相应的值。
3. 手动输入文字,input元素的value发生变化,自动同步到model的usename变量,{{username}}是从模型中读username的值,因此下面strong元素的内容跟着变了。
同步数据是angular帮我们完成的。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
- javascript实现数据双向绑定的三种方式小结
- AngularJS学习笔记(三)数据双向绑定的简单实例
- JS原生数据双向绑定实现代码
- Angular JS数据的双向绑定详解及实例
- JavaScript中双向数据绑定详解
- jQuery实现html双向绑定功能示例
- js最简单的双向绑定实例讲解
AngularJS _AngularJs 双向绑定原理(数据绑定机制)
原文地址:
https://www.jianshu.com/p/ad0c48810bf1
AngularJs
为 scope
模型上设置了一个 监听队列,用来监听数据变化并更新 view
。每次绑定一个东西到 view(html)
上时 AngularJs
就会往 $watch
队列里插入一条 $watch
,用来检测它监视的 model
里是否有变化的东西。当浏览器接收到可以被 angular context
处理的事件时,$digest
循环就会触发。$digest
会遍历所有的 $watch
。从而更新DOM
。
$watch
这有点类似于我们的观察者模式,在当前作用域$scope
下,我们创建一个监控器$watchers
和一个监听器$watch
,$watchers
负责管理所有的 $watch
,当我们每次绑定到UI
上的时候就自动创建一个$watch
,并把它放到 $watchers
。
controller.js