AngularJS学习笔记(三)数据双向绑定的简单实例


Posted in Javascript onNovember 08, 2016

双向绑定

双向绑定是AngularJS最实用的功能,它节省了大量的代码,使我们专注于数据和视图,不用浪费大量的代码在Dom监听、数据同步上,关于双向更新,可看下图:AngularJS学习笔记(三)数据双向绑定的简单实例

数据-->视图

这里我们只演示有了数据以后,如何绑定到视图上。

<!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">
      <button class='btn btn-primary' ng-click='changename();'>
        username='李四'
      </button>
      <!--页面加载初期,用户可能会看到绑定的表达式-->
      <div>{{username}}</div>
      <!--此绑定不会出现上述情况-->
      <div ng-bind='username'></div>
    </div>
  </body>
</html>

点击按钮之后,div内容变成 李四,效果如图:
AngularJS学习笔记(三)数据双向绑定的简单实例

视图—>数据

上个例子,我们看了数据变化后,视图也会自动变化。那么这个例子则是反过来,视图变化,导致数据也跟着变化,那么数据变化后,我们如何知道呢,这儿我们可以通过另外一个元素将数据再显示出来。

<!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>

查看效果:
AngularJS学习笔记(三)数据双向绑定的简单实例

实现机制

angular对常用的dom事件,xhr事件等做了封装, 在里面触发进入angular的digest流程。

在digest流程里面, 会从rootscope开始遍历, 检查所有的watcher。

Javascript 相关文章推荐
jquery实现checkbox全选全不选的简单实例
Dec 31 Javascript
js关于字符长度限制的问题示例探讨
Jan 24 Javascript
js实现表单Radio切换效果的方法
Aug 17 Javascript
javascript针对cookie的基本操作实例详解
Nov 30 Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
May 20 Javascript
JQuery 动态生成Table表格实例代码
Dec 02 Javascript
关于angular js_$watch监控属性和对象详解
Apr 24 Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
Oct 26 Javascript
element ui 对话框el-dialog关闭事件详解
Feb 26 Javascript
jQuery的Ajax接收java返回数据方法
Aug 11 jQuery
详解vue项目中调用百度地图API使用方法
Apr 25 Javascript
vue父组件触发事件改变子组件的值的方法实例详解
May 07 Javascript
bootstrapfileinput实现文件自动上传
Nov 08 #Javascript
JS实现探测网站链接的方法【测试可用】
Nov 08 #Javascript
AngularJS+Bootstrap实现多文件上传与管理
Nov 08 #Javascript
AngularJS压缩JS技巧分析
Nov 08 #Javascript
jQuery的Read()方法代替原生JS详解
Nov 08 #Javascript
bootstrap fileinput完整实例分享
Nov 08 #Javascript
AngularJS动态加载模块和依赖的方法分析
Nov 08 #Javascript
You might like
PHP全概率运算函数(优化版) Webgame开发必备
2011/07/04 PHP
Joomla开启SEF的方法
2016/05/04 PHP
PHP获取用户客户端真实IP的解决方案
2016/10/10 PHP
PHP+Apache实现二级域名之间共享cookie的方法
2019/07/24 PHP
JavaScript XML和string相互转化实现代码
2011/07/04 Javascript
Javascript中String的常用方法实例分析
2015/06/13 Javascript
jQuery EasyUI Draggable拖动组件
2017/03/01 Javascript
vue 解决addRoutes动态添加路由后刷新失效问题
2018/07/02 Javascript
Vue.js样式动态绑定实现小结
2019/01/24 Javascript
vue组件数据传递、父子组件数据获取,slot,router路由功能示例
2019/03/19 Javascript
Vue如何获取数据列表展示
2019/12/11 Javascript
[04:22]DOTA2上海特级锦标赛主赛事第四日TOP10
2016/03/06 DOTA
Python Queue模块详解
2014/11/30 Python
Python自动化构建工具scons使用入门笔记
2015/03/10 Python
Python使用scrapy抓取网站sitemap信息的方法
2015/04/08 Python
初步理解Python进程的信号通讯
2015/04/09 Python
利用Tkinter和matplotlib两种方式画饼状图的实例
2017/11/06 Python
python实现报表自动化详解
2017/11/16 Python
Python聊天室程序(基础版)
2018/04/01 Python
Window 64位下python3.6.2环境搭建图文教程
2018/09/19 Python
python binascii 进制转换实例
2019/06/12 Python
python设计tcp数据包协议类的例子
2019/07/23 Python
Django实现跨域的2种方法
2019/07/31 Python
Python如何用filter函数筛选数据
2020/03/05 Python
PyTorch中model.zero_grad()和optimizer.zero_grad()用法
2020/06/24 Python
python+flask编写一个简单的登录接口
2020/11/13 Python
纯CSS3实现鼠标悬停提示气泡效果
2014/02/28 HTML / CSS
萌新HTML5 入门指南(二)
2020/11/09 HTML / CSS
Sunglass Hut巴西网上商店:男女太阳镜
2020/10/04 全球购物
在使用非全零作为空指针内部表达的机器上, NULL是如何定义
2014/11/09 面试题
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
幼师专业毕业生自荐信
2013/09/29 职场文书
手机业务员岗位职责
2013/12/13 职场文书
科级干部考察材料
2014/02/15 职场文书
乡镇安全生产目标责任书
2014/07/23 职场文书
大一学生个人总结
2015/02/15 职场文书