angular 封装 Jquery插件时作用域问题

今天在封装一个Jquery插件的时候,在用jquery处理绑定事件时需要访问scope去更新绑定model的值,
<span style="font-size:32px;color:#ff0000;">使用$.proxy在将事件的上下文改为scope。</span>
代码如下:

commonDirective.directive('commonDate', function() {
    var defaultUrl = CONSTANT.COMMONDIRECTIVE.PATH + 'commonDate.html';
    return {
        templateUrl : function(elem, attrs) {
            return attrs.myTemplateUrl || defaultUrl;
        },
        scope : {
            placeholder : '@myPlaceholder',
            model : '=myModel'
        },
        replace : true,
        link : function(scope, element, attrs, ctrl) {
            $(element).closest('.input-group').datepicker({
                todayBtn : true,
                clearBtn : true,
                language : "zh-CN",
                orientation : "top auto",
                calendarWeeks : true,
                autoclose : true,
                todayHighlight : true
            });
          <span style="color:#cc0000;">  $(element).closest('.input-group').on('changeDate', $.proxy(function(event) {</span>
                var me = this;
                this.model = event.date.Format('yyyy年MM月dd日');
                this.$apply();
            }, scope));
        },
        controller : function($scope, $element, $attrs, $http) {

        }
    }
});



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值