AngularJS指令与控制器之间的交互功能示例


Posted in Javascript onDecember 14, 2016

本文实例讲述了AngularJS指令与控制器之间的交互功能。分享给大家供大家参考,具体如下:

本节我们来看控制器与指令之间的交互

1.首先来看最简单的,在指令中调用父控制器的方法:

<div ng-controller="myController1">
</div>
app.controller('myController1',['$scope',function($scope){
    $scope.load=function(){
     console.log('正在加载数据......');
    }
}]);
app.directive('myTest',function(){
    return{
      restrict:'E',
      link:function(scope,ele,attr){
        ele.bind('mouseenter',function(){
          scope.load();
        })
      }
    }
})

在第一节中,我们已经知道了如何在指令的scope参数中调用父控制器中的方法,这里的:

scope.load();

也可以写成:

scope.$apply('load()');

2.同一个指令,在动态调用多个父类控制器中的方法:

<div ng-controller="myController1" loadMore="load1()"</div>
<div ng-controller="myController2" loadMore="load2()"></div>
app.controller('myController1',['$scope',function($scope){
    $scope.load1=function(){
     console.log('正在加载数据......');
    }
}]);
app.controller('myController2',['$scope',function($scope){
    $scope.load2=function(){
    console.log('正在加载数据........');
    }
}]);
app.directive('myTest',function(){
    return{
      restrict:'E',
      link:function(scope,ele,attr){
        ele.bind('mouseenter',function(){
          scope.$apply(attr.loadmore())
        })
      }
    }
})

注意这里:

scope.$apply(attr.loadmore());

loadmore是小写,而在html中,属性是通过驼峰法则得到的。

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
javascript TextArea动态显示剩余字符
Oct 22 Javascript
Javascript解决常见浏览器兼容问题的12种方法
Jan 04 Javascript
Javascript 鼠标移动上去小三角形滑块缓慢跟随效果
Apr 26 Javascript
快速掌握WordPress中加载JavaScript脚本的方法
Dec 17 Javascript
AngularJs Understanding the Model Component
Sep 02 Javascript
鼠标经过出现气泡框的简单实例
Mar 17 Javascript
ES6中Array.copyWithin()函数的用法实例详解
Sep 16 Javascript
vue-router启用history模式下的开发及非根目录部署方法
Dec 23 Javascript
iview tabs 顶部导航栏和模块切换栏的示例代码
Mar 04 Javascript
深入理解react 组件类型及使用场景
Mar 07 Javascript
详解微信小程序轨迹回放实现及遇到的坑
Feb 02 Javascript
vue实现可移动的悬浮按钮
Mar 04 Vue.js
网站申请不到支付宝接口、微信接口,免接口收款实现方式几种解决办法
Dec 14 #Javascript
AngularJS定时器的使用与移除操作方法【interval与timeout】
Dec 14 #Javascript
本地Bootstrap文件字体图标引入却无法显示问题的解决方法
Apr 18 #Javascript
微信小程序中使元素占满整个屏幕高度实现方法
Dec 14 #Javascript
AngularJS基于ngInfiniteScroll实现下拉滚动加载的方法
Dec 14 #Javascript
bootstrap modal弹出框的垂直居中
Dec 14 #Javascript
微信小程序 免费SSL证书https、TLS版本问题的解决办法
Dec 14 #Javascript
You might like
一段好玩的JavaScript代码
2006/12/01 Javascript
javascript 传统事件模型构造的事件监听器实现代码
2010/05/31 Javascript
Json和Jsonp理论实例代码详解
2013/11/15 Javascript
javascript属性访问表达式用法分析
2015/04/25 Javascript
JavaScript的模块化开发框架Sea.js上手指南
2016/05/12 Javascript
JQuery遍历元素的后代和同胞实现方法
2016/09/18 Javascript
js实现表格筛选功能
2017/01/18 Javascript
Windows下使用Nodejs运行js的方法
2017/09/02 NodeJs
vuex的module模块用法示例
2018/11/12 Javascript
如何解决.vue文件url引用文件的问题
2019/01/18 Javascript
Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控
2019/05/13 Javascript
RxJS在TypeScript中的简单使用详解
2020/04/13 Javascript
JS出现404错误原理及解决方案
2020/07/01 Javascript
使用Vue-scroller页面input框不能触发滑动的问题及解决方法
2020/08/08 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
2020/08/25 Javascript
用Python中的wxPython实现最基本的浏览器功能
2015/04/14 Python
解决Python中由于logging模块误用导致的内存泄露
2015/04/23 Python
Python中if __name__ == '__main__'作用解析
2015/06/29 Python
使用Python简单的实现树莓派的WEB控制
2016/02/18 Python
Python利用公共键如何对字典列表进行排序详解
2018/05/19 Python
Numpy 将二维图像矩阵转换为一维向量的方法
2018/06/05 Python
python3实现名片管理系统
2020/11/29 Python
pandas对dataFrame中某一个列的数据进行处理的方法
2019/07/08 Python
Python实现链表反转的方法分析【迭代法与递归法】
2020/02/22 Python
python 使用三引号时容易犯的小错误
2020/10/21 Python
美国内衣品牌:Leonisa
2016/08/14 全球购物
斯凯奇美国官网:SKECHERS美国
2016/08/20 全球购物
Lookfantastic西班牙官网:英国知名美妆购物网站
2018/06/13 全球购物
德国最新街头服饰网上商店:BODYCHECK
2019/09/15 全球购物
抽象类和接口的区别
2012/09/19 面试题
篝火晚会主持词
2014/03/25 职场文书
工商管理专业自荐信
2014/06/03 职场文书
刑事辩护授权委托书格式
2014/10/13 职场文书
医学生自荐信范文
2015/03/05 职场文书
乡镇安全生产月活动总结
2015/05/08 职场文书
JavaScript控制台的更多功能
2021/04/28 Javascript