首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >重写指令的链接函数

重写指令的链接函数
EN

Stack Overflow用户
提问于 2015-03-08 21:59:25
回答 1查看 3.4K关注 0票数 9

我正在开发一个使用优秀UI Bootstrap library的应用程序。一切都很好,但是我偶然发现了一个bug,它的崩溃插件破坏了IE10。我正在使用崩溃插件的主要导航和让这是一个相当大的问题,所以我需要想办法绕过它。

我真的不想黑主图书馆。似乎我应该能够使用找到hereherehere的方法来修饰这个第三方指令,但我似乎无法让它发挥作用。

具体来说,我正在试图覆盖驻留在折叠指令的link()函数中的extend()函数,以检查IE10浏览器。

有没有人做过这件事,或者知道该怎么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-08 23:01:11

好的!您可以修饰指令并扩展它或完全覆盖它。这是一个很好的blog post on this

最直截了当的方法是:

代码语言:javascript
复制
app.config(function($provide) {
  $provide.decorator('collapseDirective', function($delegate) {
    var directive = $delegate[0];

    var link = function myLinkFnOverride(scope, element, attrs) {
           // code here...
    }

    directive.compile = function() {
      return function(scope, element, attrs) {
        link.apply(this, arguments);
      };
    };

    return $delegate;
  });
});

它将完全覆盖原始链接函数(需要复制、粘贴所有链接并更改所需的部分)

票数 20
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28932414

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档