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 相关文章推荐
动态表格Table类的实现
Aug 26 Javascript
JQUERY1.6 使用方法四 检测浏览器
Nov 23 Javascript
jQuery轻松实现表格的隔行变色和点击行变色的实例代码
May 09 Javascript
JS框架之vue.js(深入三:组件1)
Sep 29 Javascript
Node.js中用D3.js的方法示例
Jan 16 Javascript
Vue2.0表单校验组件vee-validate的使用详解
May 02 Javascript
webpack处理 css\less\sass 样式的方法
Aug 21 Javascript
详解webpack 入门与解析
Apr 09 Javascript
JavaScript 下载svg图片为png格式
Jun 21 Javascript
jQuery实现的老虎机跑动效果示例
Dec 29 jQuery
生产制造追溯系统之再说条码打印
Jun 03 Javascript
vue-cli打包后本地运行dist文件中的index.html操作
Aug 12 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模拟js函数unescape的函数代码
2012/10/20 PHP
Thinkphp中的volist标签用法简介
2014/06/18 PHP
php判断访问IP的方法
2015/06/19 PHP
laravel 数据验证规则详解
2019/10/23 PHP
javascript 闭包
2011/09/15 Javascript
javascript刷新父页面的各种方法汇总
2014/09/03 Javascript
javascript事件绑定学习要点
2016/03/09 Javascript
Jquery和JS获取ul中li标签的实现方法
2016/06/02 Javascript
JS简单随机数生成方法
2016/09/05 Javascript
angularJs关于指令的一些冷门属性详解
2016/10/24 Javascript
完美解决jQuery fancybox ie 无法显示关闭按钮的问题
2016/11/29 Javascript
vue-cli如何快速构建vue项目
2017/04/26 Javascript
js制作简单的音乐播放器的示例代码
2017/08/28 Javascript
微信小程序bindtap事件与冒泡阻止详解
2019/08/08 Javascript
Angular8基础应用之表单及其验证
2019/08/11 Javascript
js实现登录时记住密码的方法分析
2020/04/05 Javascript
python实现逆波兰计算表达式实例详解
2015/05/06 Python
Python中unittest模块做UT(单元测试)使用实例
2015/06/12 Python
Python生成器定义与简单用法实例分析
2018/04/30 Python
python matlibplot绘制多条曲线图
2021/02/19 Python
Django中数据库的数据关系:一对一,一对多,多对多
2018/10/21 Python
python numpy元素的区间查找方法
2018/11/14 Python
python使用magic模块进行文件类型识别方法
2018/12/08 Python
Python变量格式化输出实现原理解析
2020/08/06 Python
美国最好的保健品打折网店:Swanson
2017/08/04 全球购物
小溪流的歌教学反思
2014/02/13 职场文书
运动会广播稿20字
2014/02/18 职场文书
计算机求职信
2014/07/02 职场文书
出售房屋委托书范本
2014/09/24 职场文书
高三复习计划
2015/01/19 职场文书
社团个人总结范文
2015/03/05 职场文书
实验室安全管理制度
2015/08/05 职场文书
Html5页面播放M4a音频文件
2021/03/30 HTML / CSS
学会用Python实现滑雪小游戏,再也不用去北海道啦
2021/05/20 Python
解决SpringCloud Feign传对象参数调用失败的问题
2021/06/23 Java/Android
一篇文章带你学习Mybatis-Plus(新手入门)
2021/08/02 Java/Android