優れたUIBootstrapライブラリを使用しているアプリケーションに取り組んでいます。すべて正常に動作しますが、IE10で機能するcollapseプラグインのバグに遭遇しました。私はメインナビゲーションにcollapseプラグインを使用していますが、これを壊すのはかなり大きな問題なので、それを回避する方法を見つける必要があります。
私は本当にメインライブラリをハックしたくありません。それは私がアプローチを使用して、このサードパーティのディレクティブを飾ることができるはずのように思える見つけ、ここやここやここに、私は仕事にそれを得るように見えることはできません。
具体的には、collapseディレクティブのlink()関数にあるextend()関数をオーバーライドして、IE10ブラウザーのチェックを実行しようとしています。
誰かがこれをしたか、これを行う方法を知っていますか?
承知しました!ディレクティブを装飾して拡張するか、完全にオーバーライドすることができます。これに関する優れたブログ投稿があります
最も簡単な方法は、次のことを行うことです。
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;
});
});
これは元のリンク機能を完全に上書きします(すべてをコピーして貼り付け、必要な部分を変更する必要があります)
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加