将变量绑定到指令范围为vm,而不需要为指令设置控制器



下面的代码可以正常工作。但是,我可以绑定匿名和启用"范围为vm"没有定义一个控制器?我不需要控制器。我只需要这两个变量。

我使用的是angular 1.4。

angular.
module("Settings").
directive("Settings", function SettingsDirective() {
    "use strict";
    return {
        restrict: "E",
        scope: {
            anonymous: "=",
            enabled: "=",
        },
        templateUrl: "tmpl/settings/settings-directive.html",
        controller: "SettingsController",
        controllerAs: "vm",
        bindToController: true,
    };
});

这可能有助于更多地了解为什么要实现此目的,而不仅仅是使用?

angular.
    module("Settings").
    directive("Settings", function SettingsDirective() {
        "use strict";
        return {
            restrict: "E",
            scope: {
                anonymous: "=",
                enabled: "=",
            },
            templateUrl: "tmpl/settings/settings-directive.html",
            controller: function(){}
        };
   });

最新更新