gpt4 book ai didi

javascript - 添加新 Controller 后 Angularjs 应用程序无法正常工作

转载 作者:行者123 更新时间:2023-11-29 18:24:09 24 4
gpt4 key购买 nike

最初我的 controller.js 看起来像这样

    function MyCtrl1() {}
MyCtrl1.$inject = [];


function MyCtrl2() {
}
MyCtrl2.$inject = [];

HTML代码是这样的

    <!doctype html>
<html lang="en" ng-app="myApp">
<head>
<meta charset="utf-8">
<title>My AngularJS App</title>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.js"></script>
<script src="http://angular-ui.github.com/bootstrap/ui-bootstrap-tpls-0.2.0.js"></script>
<link rel="stylesheet" href="css/app.css"/>
</head>
<body>
<ul class="menu">
<li><a href="#/view1">view1</a></li>
<li><a href="#/view2">view2</a></li>
</ul>

<div ng-view></div>

<div>Angular seed app: v <span app-version></span></div>
<div>Author is : <span app-author></span></div>

<script src="js/app.js"></script>
<script src="js/services.js"></script>
<script src="js/controllers.js"></script>
<script src="js/filters.js"></script>
<script src="js/directives.js"></script>
</body>
</html>

这是service.js代码

    angular.module('myApp.services', []).
value('version', '0.1')
.value('author','Jay');

还有directive.js代码

    angular.module('myApp.directives', []).
directive('appVersion', ['version', function(version) {
return function(scope, elm, attrs) {
elm.text(version);
};
}])
.directive('appAuthor', ['author', function(author) {
return function(scope, elm, attrs){
elm.text(author);
};
}]);

上面的代码完全可以正常工作并显示在 service.js 中配置的 versionauthor

当我修改我的 controller.js 以包含一个新的 Controller 时,它停止工作,并且版本和作者都不显示。修改后的controller代码如下

    function MyCtrl1() {}
MyCtrl1.$inject = [];


function MyCtrl2() {
}
MyCtrl2.$inject = [];

angular.module('myApp', ['ui.bootstrap']);
var TabsDemoCtrl = function ($scope) {
$scope.panes = [
{ title:"Dynamic Title 1", content:"Dynamic content 1" },
{ title:"Dynamic Title 2", content:"Dynamic content 2" }
];
};
TabsDemoCtrl.$inject = ['$scope'];

为什么这个东西不起作用的任何指示。

最佳答案

看来您的问题是在此处重新声明 myApp:

angular.module('myApp', ['ui.bootstrap']);

我能够重现你的问题

angular.module('myApp', ['myApp.services', 'myApp.directives']);
angular.module('myApp', ['ui.bootstrap']);

切换到

angular.module('myApp', ['myApp.services', 'myApp.directives', 'ui.bootstrap']);

让一切恢复正常。

关于javascript - 添加新 Controller 后 Angularjs 应用程序无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15276730/

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