Angular.js 依赖注入问题
高洛峰
高洛峰 2017-05-15 17:03:14
0
2
596
//定义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教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全員に返信(2)
黄舟

value は定数に非常によく似ています (config ステージでは使用できない点を除いて)。ドキュメントを参照してください: value很像是个常量(除了不能在config阶段使用),看文档:

至于为什么conA不能在conB中使用的问题,纯粹是你玩错了路子,首先,这种controller

#🎜🎜# #🎜🎜#conAconB で使用できない理由については、純粋にあなたのプレイ方法が間違っているためです。 まず第一に、この種の controller 相互依存の方法は推奨されません。第二に、このようにプレイすることを主張する場合、コードはそのように書かれていません。 #🎜🎜# リーリー
いいねを押す +0
给我你的怀抱

使用した携帯電話の簡単な説明:

var B = angular.module('b',['a'])
これは、モジュール B がモジュール A に依存し、その後

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

つまり、モジュールBのConteollerにtimeを注入します。このように注入する場合、注入されるクラスは定義と同じでなければなりません。 2 番目の方法を使用する場合、つまり次のように記述する場合は、$inject を使用できます。これにより、コード変数の省略形の圧縮の問題も回避できます。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート