如何将控制器注入AngularJS中的另一个控制器

如何将控制器注入AngularJS中的另一个控制器

我是Angular的新手并试图找出如何做事......

使用AngularJS,如何注入要在另一个控制器中使用的控制器?

我有以下代码段:

var app = angular.module("testApp", ['']);app.controller('TestCtrl1', ['$scope', function ($scope) {
    $scope.myMethod = function () {
        console.log("TestCtrl1 - myMethod");
    }}]);app.controller('TestCtrl2', ['$scope', 'TestCtrl1', function ($scope, TestCtrl1) {
    TestCtrl1.myMethod();}]);

当我执行此操作时,我收到错误:

Error: [$injector:unpr] Unknown provider: TestCtrl1Provider <- TestCtrl1http://errors.angularjs.org/1.2.21/$injector/unpr?p0=TestCtrl1Provider%20%3C-%20TestCtrl1

我是否应该尝试在另一个控制器内使用控制器,还是应该将其作为服务?


PIPIONE
浏览 671回答 3
3回答

翻过高山走不出你

无需在JS中导入/注入您的控制器。您可以通过HTML注入您的控制器/嵌套控制器。它对我有用。喜欢 :<div&nbsp;ng-controller="TestCtrl1"> &nbsp;&nbsp;&nbsp;&nbsp;<div&nbsp;ng-controller="TestCtrl2"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<!--&nbsp;your&nbsp;code-->&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;</div>&nbsp;</div>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

AngularJS