发布于 2017-04-27 13:29:24 | 116 次阅读 | 评论: 0 | 来源: 网友投递
这里有新鲜出炉的AngularJS Tutorial中文版,程序狗速度看过来!
AngularJS 前端JS框架
AngularJS诞生于Google是一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入,等等。
本文实例讲述了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程序设计有所帮助。