我使用以下代码使用路径和控制器创建角度应用程序。
(function() {
angular.module('eCommerceApp', ['ngRoute'])
.config('$routeProvider', function($routeProvider) {
$routeProvider.
when('/', {
templateUrl: 'partials/phonelist.html',
controller: 'mobilePhoneListController'
}).
when('/phone/:phoneSlug', {
templateUrl: 'partials/phonedetail.html',
controller: 'mobilePhoneDetailController'
}).
otherwise({
templateUrl: 'error/404.html',
});
})
.controller('mobilePhoneListController', ['$http', function($http) {
var thisObj = this;
thisObj.mobilePhones = [];
$http.get('/api/getallphones').then( function(data) {
thisObj.mobilePhones = data;
}, function(data) {
thisObj.mobilePhones = data || "Request Data Fail!";
});
}])
.controller('mobilePhoneDetailController', ['$http', function($http) {
var thisObj = this;
}])
})();
在此之前我导入了3个脚本。角度,角度路线和我的应用
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-route.min.js"></script>
<script src="/angular/e-commerce-app.js"></script>
和网站主体结构
<html lang="en" ng-app="eCommerceApp">
<!-- ... -->
<body ng-view>
</body>
</html>
还尝试使用<ng-view></ng-view>
但我总是接近this error。
错误:$ injector:modulerr模块错误 由于以下原因,无法实例化模块eCommerceApp: 错误:[ng:areq] http://errors.angularjs.org/1.4.8/ng/areq?p0=fn&p1=not%20 ... 在错误(本机) 在http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js:6:416 ...
答案 0 :(得分:1)
在您的网站主结构(index.html)中,使用ng-app =&#34; eCommerceApp&#34;作为&#39; body&#39;中的一个属性标签。例如:
<body ng-app="eCommerceApp">
答案 1 :(得分:0)
问题在于我没有将.config
文件包含在内。我用
.config('$routeProvider', function($routeProvider) { ... });
虽然它应该
.config(['$routeProvider', function($routeProvider) { ... }]);
(注意[]
)