gpt4 book ai didi

AngularJS : minification issue in directive

转载 作者:行者123 更新时间:2023-12-02 19:24:47 26 4
gpt4 key购买 nike

我还有另一个关于缩小的问题。这次是因为 $scope 服务传递到了指令的 Controller 。参见下面的代码:

angular.module('person.directives').
directive("person", ['$dialog', function($dialog) {
return {
restrict: "E",
templateUrl: "person/views/person.html",
replace: true,
scope: {
myPerson: '='
},
controller: function ($scope)
{
$scope.test = 3;
}
}
}]);

如果我注释掉 Controller 部分,那么它就可以正常工作。

如您所见,我使用了该指令的数组声明,因此即使在缩小之后,Angular 也知道 $dialog 服务。但是我应该如何为 Controller 上的 $scope 服务执行此操作?

最佳答案

您需要声明一个 Controller ,如下所示:

controller: ['$scope', function ($scope)
{
$scope.test = 3;
}]

完整示例在这里:

angular.module('person.directives').
directive("person", ['$dialog', function($dialog) {
return {
restrict: "E",
templateUrl: "person/views/person.html",
replace: true,
scope: {
myPerson: '='
},
controller: ['$scope', function ($scope)
{
$scope.test = 3;
}]
}
}]);

@Sam 提供的解决方案可以工作,但这意味着将指令的 Controller 暴露给整个应用程序,这是不必要的。

关于AngularJS : minification issue in directive,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16055449/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com