全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

angularjs指令之绑定策略(@、=、&)

引入主题背景:angular 的指令配置中的template可以直接使用硬编码写相应的代码,不过也可以根据变量,进行动态更新。那么需要用到那些变量,因用法的不同,所以需要设置合适的绑定策略。

1:先说指令域scope的@

我觉得描述很费劲,直接用代码来阐述:

AngularJS.html

<!doctype html> 
<html ng-app='myApp'> 
 <head>  
 
 </head> 
 <body>  
 
 <div ng-controller="listCtrl">  
 <input type="text" ng-model="t" /> 
  <kid title="{{t}}" > //这个必须指定的,这里的title是指令里scope的@对应的,t就是控制域scope下的 
  <span>我的angularjs</span> 
 </kid> 
</div> 
<script type="text/javascript" src="angular.js"></script> 
<script type="text/javascript" src="main05.js"></script> 
</body></html> 

main05.js

var myApp=angular.module('myApp',[]); 
myApp.controller('listCtrl',function($scope){ 
 $scope.logchore="motorola"; 
}); 
 
 
myApp.directive('kid',function(){ 
 return { 
  'restrict':'E', 
  scope:{ 
   title:"@" 
  }, 
  template:'<div >{{title}}</div>' 
   
 } 
}); 

在输入框输入数字会绑定到指令模板的title中。

2:再说说Scope的=

angularjs.html

<!doctype html> 
<html ng-app='myApp'> 
 <head>  
 
 </head> 
 <body>  
 
 <div ng-controller="listCtrl">  
 <input type="text" ng-model="t" /> 
  <kid title="t" > //和上面相比,这个直接赋值等于scope域下的t了 
  <p>{{title}}</p> 
  <span>我的angularjs</span> 
 </kid> 
</div> 
<script type="text/javascript" src="angular.js"></script> 
<script type="text/javascript" src="main05.js"></script> 
</body></html> 

main05.js代码如下:

var myApp=angular.module('myApp',[]); 
myApp.controller('listCtrl',function($scope){ 
 $scope.logchore="motorola"; 
}); 
 
 
myApp.directive('kid',function(){ 
 return { 
  'restrict':'E', 
  scope:{ 
   title:"=" 
  }, 
  template:'<div >{{title}}</div>' 
   
 } 
}); 

3:最后说&,这个是用来方法调用的

angularjs.html代码如下:

<!doctype html> 
<html ng-app='myApp'> 
 <head>  
 
 </head> 
 <body>  
 
 <div ng-controller="listCtrl">  
  <kid flavor="logchore()" ></kid> //先比=,函数赋值的形式,而logchore函数必须是域scope下声明的函数 
</div> 
<script type="text/javascript" src="angular.js"></script> 
<script type="text/javascript" src="main05.js"></script> 
</body></html> 

main05.js代码如下:

var myApp=angular.module('myApp',[]); 
myApp.controller('listCtrl',function($scope){ 
 $scope.logchore=function(){ 
  alert('ok'); 
 }; 
}); 
 
 
myApp.directive('kid',function(){ 
 return { 
  'restrict':'E', 
  scope:{ 
   flavor:"&" 
  }, 
  template:'<div ><button ng-click="flavor()"></button></div>' 
   
 } 
}); 

如果logchore带有参数,

angularjs.html代码如下:

<!doctype html> 
<html ng-app='myApp'> 
 <head>  
 
 </head> 
 <body>  
 
 <div ng-controller="listCtrl">  
 
  <kid flavor="logchore(t)" ></kid> 
 
</div> 
<script type="text/javascript" src="angular.js"></script> 
<script type="text/javascript" src="main05.js"></script> 
</body></html> 

main05.js代码如下:

var myApp=angular.module('myApp',[]); 
myApp.controller('listCtrl',function($scope){ 
 $scope.logchore=function(x){ 
  alert(x); 
 }; 
}); 
 
 
myApp.directive('kid',function(){ 
 return { 
  'restrict':'E', 
  scope:{ 
   flavor:"&" 
  }, 
  template:'<div > <input type="text" ng-model="v" /> <button ng-click="flavor({t:v})"></button></div>' 
   
 } 
}); 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# angularjs  # 绑定策略  # angular  # 指令绑定策略  # 指令绑定  # Angularjs中三种数据的绑定策略(“@”  # “=”  # “&”)  # AngularJS指令中的绑定策略实例分析  # 详解angularjs中的隔离作用域理解以及绑定策略  # 详解angularJs指令的3种绑定策略  # angularJS 中$scope方法使用指南  # AngularJS中监视Scope变量以及外部调用Scope方法  # 深入解析AngularJS框架中$scope的作用与生命周期  # AngularJs Scope详解及示例代码  # 浅谈AngularJs指令之scope属性详解  # AngularJS中scope的绑定策略实例分析  # 绑定  # 我觉得  # 可以直接  # 可以根据  # 先说  # 大家多多  # 输入框  # 是用来  # ng  # app  # gt  # lt  # doctype  # myApp  # controller  # div  # body  # listCtrl  # head  # scope 


相关文章: Android自定义控件实现温度旋转按钮效果  香港服务器租用费用高吗?如何避免常见误区?  Thinkphp 中 distinct 的用法解析  建站之星安装模板失败:服务器环境不兼容?  如何选择适合PHP云建站的开源框架?  建站之星北京办公室:智能建站系统与小程序生成方案解析  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  攀枝花网站建设,攀枝花营业执照网上怎么年审?  网站制作壁纸教程视频,电脑壁纸网站?  宝塔建站教程:一键部署配置流程与SEO优化实战指南  详解jQuery停止动画——stop()方法的使用  Python lxml的etree和ElementTree有什么区别  如何批量查询域名的建站时间记录?  三星网站视频制作教程下载,三星w23网页如何全屏?  如何快速查询域名建站关键信息?  网站制作软件有哪些,制图软件有哪些?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  网站制作公司排行榜,四大门户网站排名?  建站之星3.0如何解决常见操作问题?  建站之星在线客服如何快速接入解答?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  建站之星代理如何获取技术支持?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  网站企业制作流程,用什么语言做企业网站比较好?  常州企业网站制作公司,全国继续教育网怎么登录?  怀化网站制作公司,怀化新生儿上户网上办理流程?  网页设计与网站制作内容,怎样注册网站?  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  nginx修改上传文件大小限制的方法  如何在VPS电脑上快速搭建网站?  香港服务器部署网站为何提示未备案?  网站建设设计制作营销公司南阳,如何策划设计和建设网站?  建站之星安装失败:服务器环境不兼容?  在线制作视频的网站有哪些,电脑如何制作视频短片?  已有域名和空间如何搭建网站?  公司网站的制作公司,企业网站制作基本流程有哪些?  如何快速生成专业多端适配建站电话?  如何快速配置高效服务器建站软件?  建站主机解析:虚拟主机配置与服务器选择指南  无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?  建站之星安装步骤有哪些常见问题?  建站主机是什么?如何选择适合的建站主机?  宝塔新建站点报错如何解决?  c# 在ASP.NET Core中管理和取消后台任务  武清网站制作公司,天津武清个人营业执照注销查询系统网站?  如何快速建站并高效导出源代码?  网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?  如何用AWS免费套餐快速搭建高效网站?  高防服务器如何保障网站安全无虞?  高端建站三要素:定制模板、企业官网与响应式设计优化 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。