gpt4 book ai didi

angularjs - 为什么我不能将 $scope 注入(inject) Angular 中的工厂?

转载 作者:行者123 更新时间:2023-12-04 02:13:33 26 4
gpt4 key购买 nike

我有一个需要监听广播事件的工厂。我注入(inject)了$scope进入工厂,这样我就可以使用 $scope.$on .但只要我添加 $scope到参数列表我得到一个喷油器错误。

这工作正常:

angular.module('MyWebApp.services')
.factory('ValidationMatrixFactory', ['$rootScope', function($rootScope) {
var ValidationMatrixFactory = {};
return ValidationMatrixFactory;
}]);

这会引发注入(inject)器错误:
angular.module('MyWebApp.services')
.factory('ValidationMatrixFactory', ['$scope', '$rootScope', function($scope, $rootScope) {
var ValidationMatrixFactory = {};
return ValidationMatrixFactory;
}]);

为什么我不能注入(inject) $scope进工厂?如果我不能,除了使用 $rootScope 之外,我还有什么方法可以监听事件吗? ?

最佳答案

因为 $scope 用于连接 Controller 和 View ,所以工厂并不是真的要使用 $scope。

您如何广播到 rootScope。

$rootScope.$on()

关于angularjs - 为什么我不能将 $scope 注入(inject) Angular 中的工厂?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39577047/

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