angularJS自定义directive之带参方法传递



angularJS自定义directive之带参方法传递


//自定义指令 "myEmail"
grgApp.directive("myEmail",function(){
return{
restrict:'AE',
scope:{
toDir:'@',
   fromName:'@',
   sendEmail:'&'
},
templateUrl:'/htmls/main/html/custom/email.html',
}
});




//控制器中的方法
 $scope.send=function(msg){
 alert("send email! msg: "+msg);
  }
  
   
//email.html


<div style="width: 100%;height: 100%;color: white;font-size: 0.8rem;">
<label  style="width: 100%;height: 15%;" ng-bind="toDir"></label>
<label  style="width: 100%;height: 15%;" ng-bind="fromName"></label>
<textarea style="width: 100%;height: 25%;color: black;" ng-model="content"></textarea>
<button style="width: 10%;height: 15%;color: black;" ng-click="sendEmail({msg:content})">提交</button>
</div>




//html调用
<my-email to-dir="广东中山" from-name="海南海口" send-email="send(msg)"/>






功能:点击【提交】后,将自定义指令myEmail中textarea元素的内容传递给控制器中的send()方法。
关键点:模板email.html中的ng-click="sendEmail({msg:content})" 参数{msg:content}必须是一个键值对,键为:方法参数名    值为:传递的内容


一起探讨、一同进步!
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值