将模块注入另一个模块并使用注入模块的控制器

时间:2018-07-15 09:53:25

标签: javascript angularjs html5 module

我想创建一个模块并在主模块中注入,然后将控制器注入到注入的模块中,但是它不起作用

在index.html

<html ng-app="MenuApp">
<head>
</head>
<body>
<div ng-controller="demoCtrl as demo">
<h3>{{demo.hello}</h3>
</body>
</div>
</html

在app.js中

(function () {
'use strict';
angular.module('MenuApp', ['data']);
angular.module('data', [])
.controller('demoCtrl', demoCtrl);
demoCtrl.$inject = [];
function demoCtrl() {
var demo = this;
demo.hello = "Hello World";
console.log('Hello World');
}
})();

当我使用 MenuApp 模块声明控制器( demoCtrl )时,它工作正常,但是当使用 data 模块声明时,它却无法正常工作

1 个答案:

答案 0 :(得分:0)

如果您提到您提供的示例,则您的html标记不正确,如果不是,代码看起来很正常。如果您输入有误,请与我们分享。

Codepen example of your codes

下面的例子很好用。

(function() {
    angular.module('navbar', ['data']);

    angular.module('data', [])
        .controller('DataCtrl', function() {
            console.log('Hello Data');
            this.data = 'Hello Data';
        });
})();

HTML在这里:

<div ng-app="navbar"> 
    <div ng-controller="DataCtrl as ctrl">  
        {{ ctrl.data }}
    </div>
</div>

Codepen Example