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 相关文章推荐
JQuery UI皮肤定制
Jul 27 Javascript
SeaJS 与 RequireJS 的差异对比
Dec 08 Javascript
js实现同一个页面多个渐变效果的方法
Apr 10 Javascript
jQuery实现订单提交页发送短信功能前端处理方法
Jul 04 Javascript
html5 canvas 详细使用教程
Jan 20 Javascript
jQuery代码优化方法总结
Jan 29 jQuery
Vue-Router2.X多种路由实现方式总结
Feb 09 Javascript
ng-zorro-antd 入门初体验
Dec 03 Javascript
JS字符串常用操作方法实例小结
Jun 24 Javascript
layui表格 返回的数据状态异常的解决方法
Sep 10 Javascript
初学vue出现空格警告的原因及其解决方案
Oct 31 Javascript
vue实现路由不变的情况下,刷新页面操作示例
Feb 02 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
destoon供应信息title调用出公司名称的方法
2014/08/22 PHP
jquery 图片上传按比例预览插件集合
2011/05/28 Javascript
JS实现Enter键跳转及控件获得焦点
2013/08/12 Javascript
ExtJS判断IE浏览器类型的方法
2014/02/10 Javascript
JS中字符串trim()使用示例
2015/05/26 Javascript
WebGL利用FBO完成立方体贴图效果完整实例(附demo源码下载)
2016/01/26 Javascript
jQuery Mobile操作HTML5的常用函数总结
2016/05/17 Javascript
浅谈javascript基础之客户端事件驱动
2016/06/10 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
2017/01/22 Javascript
图解Javascript——作用域、作用域链、闭包
2017/03/21 Javascript
vue使用vue-cli快速创建工程
2017/07/28 Javascript
JS模拟超市简易收银台小程序代码解析
2017/08/18 Javascript
关于axios不能使用Vue.use()浅析
2018/01/12 Javascript
vue better-scroll插件使用详解
2018/01/25 Javascript
基于Nodejs的Tcp封包和解包的理解
2018/09/19 NodeJs
angular4自定义组件非input元素实现ngModel双向数据绑定的方法
2018/12/28 Javascript
浅析vue插槽和作用域插槽的理解
2019/04/22 Javascript
[01:02]2014 DOTA2国际邀请赛中国区预选赛 现场抢先看
2014/05/22 DOTA
《Python之禅》中对于Python编程过程中的一些建议
2015/04/03 Python
Python将json文件写入ES数据库的方法
2019/04/10 Python
python opencv 二值化 计算白色像素点的实例
2019/07/03 Python
python装饰器原理与用法深入详解
2019/12/19 Python
CentOS7下安装python3.6.8的教程详解
2020/01/03 Python
pycharm的python_stubs问题
2020/04/08 Python
html5 css3网站菜单实现代码
2013/12/23 HTML / CSS
美国著名童装品牌:OshKosh B’gosh
2016/08/05 全球购物
VICHY薇姿俄罗斯官方网上商店:法国护肤品牌,火山温泉水
2019/11/22 全球购物
Java基础面试题
2014/07/19 面试题
土木工程毕业生自荐信
2013/11/12 职场文书
参观考察邀请函范文
2014/01/29 职场文书
销售冠军获奖感言
2014/02/03 职场文书
IT工程师岗位职责
2014/07/04 职场文书
幼儿园元旦主持词
2015/07/06 职场文书
运动会加油稿50字
2015/07/21 职场文书
初中语文教学研修日志
2015/11/13 职场文书
创业计划书之孕婴生活馆
2019/11/11 职场文书