AngularJS Direcitve-链接功能不会触发

奥列格·别洛索夫(Oleg Belousov)

我想要实现的目标:将cordova本机处理程序包装在angular指令中

我想使用指令包装器为Cordova的本地事件实现处理程序(以侦听主体加载事件)。

我有以下指令样板:

angular.module('vitaApp')
  .directive('cordovaNative', function () {
    return {
      restrict: 'A',
      compile: function (element, attrs, transcludeFn) {
          alert('compile fired');
         element.bind('load', function(){
              alert('load occured');
          });
      },
      link: function postLink(scope, element, attrs) {
          alert('link fired');
          element.bind('load', function(){
              alert('load occured');
          });
      }
    };
  });

通过以下方式实例化:

<body ng-app="vitaApp"  ng-controller="metaCtrl" ng-swipe-right="showMenu()"  ng-swipe-left="hideMenu()" cordova-native>

cordovaNative指令的编译功能会触发,但链接功能不会触发。

它可能与ng-swipe指令有关(例如'{terminal:true}')吗?

注:我不尝试使用compilelink在一起,我想证明,非他们的作品申请使用的目的,load单独的事件。

尚德马尼

指令中不能同时具有编译和链接功能。如果使用compile,则应返回一个函数,该函数本身就是一个链接函数。因此,上面的代码变为:

 compile: function (elem, attrs, transcludeFn) {
          alert('compile fired');
          return function(scope, element, attrs) {
             alert('link fired');
             element.on('load', function(){
                alert('load occured');
             });
          }
      },

更新:由于指令链接功能在元素加载后运行(大多数情况下),因此element load可能不需要在指令链接功能内添加事件处理程序。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

放置在另一个指令的link()方法中的direcitve不会呈现

来自分类Dev

AngularJS-从另一个指令创建元素后,指令链接功能将不会触发

来自分类Dev

删除功能不起作用angularjs

来自分类Dev

kendo UI网格更新功能不会触发

来自分类Dev

kendo UI网格更新功能不会触发

来自分类Dev

触发功能不会更新表格的第一行

来自分类Dev

AngularJS-绑定元素模糊不会触发

来自分类Dev

AngularJS ng级javascript动画不会触发

来自分类Dev

AngularJS事件处理程序不会触发

来自分类Dev

不会触发AngularJS的自定义验证

来自分类Dev

AngularJS链接函数触发得太早

来自分类Dev

服务中的AngularJS数据触发计算功能

来自分类Dev

AngularJS控制器功能未触发

来自分类Dev

AngularJS按钮点击不触发功能

来自分类Dev

angularjs过滤器功能不起作用

来自分类Dev

angularjs工厂内部功能不是工厂依赖吗?

来自分类Dev

AngularJS - 单击时功能不起作用

来自分类Dev

如何从指令链接功能更新AngularJS模型?

来自分类Dev

AngularJS消防功能点击锚链接

来自分类Dev

从控制器Angularjs调用链接功能

来自分类Dev

指令链接功能中的AngularJS更新属性

来自分类Dev

箭头功能不触发

来自分类Dev

在触发任意事件之前,AngularJS数据绑定不会更新

来自分类Dev

Angularjs模板中的jQuery目标元素不会触发

来自分类Dev

AngularJS-ng-checked不会触发ng-change

来自分类Dev

AngularJS:添加模板的ng-click不会触发

来自分类Dev

AngularJS $ http不会触发第二个.then函数

来自分类Dev

jQuery单击处理程序功能不会在DOM加载后添加的元素上触发

来自分类Dev

ng-click不会触发,功能不起作用。可能是范围吗?

Related 相关文章

热门标签

归档