Angular.js 依赖注入问题
高洛峰
高洛峰 2017-05-15 17:03:14
0
2
559
//定义A模块

var A = angular.module('a',[]);

A.value('time',new Date());

//定义B模块

var B = angular.module('b',['a']);

B.controller('conB',function($scope,time){
    $scope.b = time.getFullYear();
});


<p ng-controller = "conB">
    {{b}} //--> 2016
</p>



————————————————————————————————————————

    //定义A模块

var A = angular.module('a',[]);

A.controller('conA',function($scope){
    $scope.a = 12;
});

//定义B模块

var B = angular.module('b',['a']);

B.controller('conB',function($scope,conA){
    $scope.b = conA.a;
});


<p ng-controller = "conB">
    {{b}} //--> {{b}}报错
</p>

————————————————————————————————————————

这是为什么???
控制器之间可以进行依赖注入吗???

A.value是什么???

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

répondre à tous(2)
黄舟

value ressemble beaucoup à une constante (sauf qu'il ne peut pas être utilisé dans l'étape config), voir la documentation :

Quant à la raison pour laquelle conA ne peut pas être utilisé dans conB, c'est simplement parce que vous jouez dans le mauvais sens. Premièrement, cette manière d'interdépendance entre controller n'est pas recommandée. en faisant ce Play, le code n'est pas écrit comme ça :

//定义B模块

var B = angular.module('b',['a']);

B.controller('conB',function($scope, $controller){
    var ctrlAViewModel = $scope.$new();
    $controller('conA',{$scope : ctrlAViewModel });
    $scope.b = ctrlAViewModel.a;
});
给我你的怀抱

Une brève description du téléphone mobile utilisé :

var B = angulaire.module('b',['a'])
Cela signifie que le module B dépend du module A, et ensuite

B.controller('conB',function($scope,time){ $scope.b = time.getFullYear(); });

C'est-à-dire que le temps est injecté dans le Conteoller du module B. S'il est injecté de cette manière, la classe à injecter doit être la même que la définition. Si vous souhaitez utiliser la deuxième méthode, c'est-à-dire si vous écrivez ce qui suit, vous pouvez utiliser $inject, ce qui peut également éviter le problème de la compression des abréviations des variables de code.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!