며칠 동안 코드를 디버깅했지만 해결책을 찾을 수 없습니다. 나는 angularjs 문서뿐만 아니라 오류에 대한 기존의 몇 가지 질문을 읽었으나 코드가 실패한 오류를 발견하지 못했습니다.
이것은 내가 거의 완료하고 코드를 작성한 과제 중 하나이지만 범주의 항목을 표시하는 데 막혀 있습니다. 카테고리를 표시하는 코드는 정상적으로 작동하지만 항목을 표시하는 코드는 매우 유사하지 않습니다. 나는 정말로 혼란스럽고 막 다른 길을 걸었다. 나는 너에게 나에게 잘못을 줄 수있는 힌트 나 라인만을 줄 것을 요청한다. 나는 명예에 어긋나 기 때문에 전체 해결책을 요구하지는 않습니다.
그래서, 여기에 파일
index.html을하다
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="css/styles.css">
<title>My Restro</title>
</head>
<body ng-app="MenuApp">
<ui-view></ui-view>
<!-- Libraries -->
<script src="lib/angular.min.js"></script>
<script src="lib/angular-ui-router.min.js"></script>
<!-- Modules -->
<script src="src/menuapp/menuapp.module.js"></script>
<script src="src/menuapp/data.module.js"></script>
<!-- Routes -->
<script src="src/routes.js"></script>
<!-- 'MenuApp' module artifacts -->
<script src="src/menuapp/menudata.service.js"></script>
<script src="src/menuapp/categories.component.js"></script>
<script src="src/menuapp/categories.controller.js"></script>
<script src="src/menuapp/items.component.js"></script>
<script src="src/menuapp/item-detail.controller.js"></script>
<!-- <script src="src/menuapp/main-menuapp.controller.js"></script> -->
</body>
</html>
아이템 detail.controller :
(function() {
'use strict';
angular.module('MenuApp')
.controller('ItemDetailController', ItemDetailController);
// 'itemlist' is injected through state's resolve
ItemDetailController.$inject = ['MenuDataService','itemslist'];
function ItemDetailController(MenuDataService,itemslist) {
var itemDetailCtrl = this;
itemDetailCtrl.itemslist=itemslist;
}
})();
routes.js 경로에서
(function() {
'use strict';
angular.module('MenuApp')
.config(RoutesConfig);
RoutesConfig.$inject = ['$stateProvider', '$urlRouterProvider'];
function RoutesConfig($stateProvider, $urlRouterProvider) {
.........//other states code.....
//items state code
.state('items', {
url: '/items/{categoryShortName}',
templateUrl: 'src/menuapp/templates/item-detail.template.html',
controller: 'ItemDetailController as itemDetailCtrl',
resolve: {
itemlist: ['$stateParams', 'MenuDataService',
function ($stateParams, MenuDataService) {
return MenuDataService.getItemsForCategories($stateParams.categoryShortName);
}]
}
});
}
})();
itemslist 공장 코드에 게시하십시오. – Sajeetharan
@Sajeetharan 질문을 편집했습니다. 나는 그것이 당신이 원하는 것이라고 생각합니다. 그러나 주어진 URL에서 전체 앱에 계속 액세스 할 수 있습니다. – geeksal