suchen

Heim  >  Fragen und Antworten  >  Hauptteil

angle.js – benutzerdefinierte Anweisungen in Angular

minesweeper.directive('ngRightClick', function($parse) {
    return function(scope, element, attrs) {
        var fn = $parse(attrs.ngRightClick);
            element.bind('contextmenu', function(event) {
                scope.$apply(function() {
                    event.preventDefault();
                    fn(scope, {$event:event});
                });
        });
    };
});

Der obige Code wird als benutzerdefinierte ngRightClick-Anweisung erklärt, aber zunächst einmal verstehe ich nicht, welche Bedeutung eine benutzerdefinierte Anweisung nicht in der folgenden Form haben sollte:

minesweeper.directive("mineGrid",function(){
    return {
        restrict:'E',
        replace:false,
        templateUrl:'./templates/mineGrid.html'
    }
});

Bitte geben Sie mir einen Rat

phpcn_u1582phpcn_u15822834 Tage vor1334

Antworte allen(2)Ich werde antworten

  • phpcn_u1582

    phpcn_u15822017-05-27 17:46:42

    首先自定义右键不是自定义元素,不应约束为element,更不会有HTML。直接返回function是直接返回link function的简写,自定义右键应该约束为属性。

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-27 17:46:42

    这是使用了angular的内建服务$parse,建议看看这篇文章AngularJS内幕详解之 Directive

    Antwort
    0
  • StornierenAntwort