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 相关文章推荐
JS打开层/关闭层/移动层动画效果的实例代码
May 11 Javascript
把jquery 的dialog和ztree结合实现步骤
Aug 02 Javascript
jquery复选框checkbox实现删除前判断
Apr 20 Javascript
浅谈JavaScript实现面向对象中的类
Dec 09 Javascript
JS实现3D图片旋转展示效果代码
Sep 22 Javascript
一个极为简单的requirejs实现方法
Oct 20 Javascript
JavaScript中防止微信浏览器被整体拖动的方法
Aug 25 Javascript
微信小程序form表单组件示例代码
Jul 15 Javascript
如何在js代码中消灭for循环实例详解
Jul 29 Javascript
mongodb初始化并使用node.js实现mongodb操作封装方法
Apr 02 Javascript
vue data恢复初始化数据的实现方法
Oct 31 Javascript
vue实现户籍管理系统
May 29 Javascript
网站申请不到支付宝接口、微信接口,免接口收款实现方式几种解决办法
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
PHP操作文件方法问答
2007/03/16 PHP
PHP中实现汉字转区位码应用源码实例解析
2010/06/14 PHP
php中生成随机密码的自定义函数代码
2013/10/21 PHP
ThinkPHP的URL重写问题
2014/06/22 PHP
php内存缓存实现方法
2015/01/24 PHP
php实现上传图片文件代码
2015/07/19 PHP
PHP实现简单实用的分页类代码
2016/04/08 PHP
PHP命名空间namespace的定义方法详解
2017/03/29 PHP
jquery checkbox,radio是否选中的判断代码
2010/03/20 Javascript
dojo随手记 gird组件引用
2011/02/24 Javascript
jQuery动画animate方法使用介绍
2013/05/06 Javascript
JavaScript 变量、作用域及内存
2015/04/08 Javascript
js滚轮事件兼容性问题需要注意哪些
2016/11/15 Javascript
纯JS单页面赛车游戏制作代码分享
2017/03/03 Javascript
iscroll动态加载数据完美解决方法
2017/07/18 Javascript
本地存储localStorage用法详解
2017/07/31 Javascript
Angular使用 ng-img-max 调整浏览器中的图片的示例代码
2017/08/17 Javascript
详解react服务端渲染(同构)的方法
2017/09/21 Javascript
微信小程序三级联动选择器使用方法
2020/05/19 Javascript
JS中数据结构之栈
2019/01/01 Javascript
Vue实现商品飞入购物车效果(电商项目)
2019/11/26 Javascript
JS实现简易留言板(节点操作)
2020/03/16 Javascript
python3.3使用tkinter开发猜数字游戏示例
2014/03/14 Python
详解Python之数据序列化(json、pickle、shelve)
2017/03/30 Python
django之session与分页(实例讲解)
2017/11/13 Python
PyTorch CNN实战之MNIST手写数字识别示例
2018/05/29 Python
详解Python3除法之真除法、截断除法和下取整对比
2019/05/23 Python
opencv 查找连通区域 最大面积实例
2020/06/04 Python
Pandas的Apply函数具体使用
2020/07/21 Python
大学生自我鉴定评语
2014/01/27 职场文书
劳动竞赛活动总结
2014/05/05 职场文书
竞聘上岗演讲稿
2014/05/16 职场文书
安全负责人任命书
2014/06/06 职场文书
银行主办会计岗位职责
2014/08/13 职场文书
退休劳动合同怎么写?
2019/10/25 职场文书
python和anaconda的区别
2022/05/06 Python