Базовая структура приложения
Вложений: 1
Всем привет. Дней 5 уже плотно налегаю на Angular, прохожу обучающие материалы с нескольких сайтов, по тому у меня начинает в голове вариться каша.
В частности использую следующий style-guide Пытаюсь правильно раздробить приложение на части, но пока всё тщетно. По не понятной мне причине шаблон контроллера не хочет отображаться. В index.html исть следующий элемент: <div ng-view></div> Сам контроллер
angular
.module('adminPanel')
.controller('orderController', orderController);
orderController.$inject = ['orderService', 'logger'];
function orderController(orderService, logger) {
// vm - View Model
var vm = this;
vm.orders = [];
load();
function load() {
return getOrders()
.then(function () {
logger.info('Orders were loaded')
});
}
function getOrders() {
return orderService
.getOrders()
.then(function (data) {
vm.orders = data;
return vm.orders;
});
}
}
View:
<div ng-repeat="order in vm.orders">
{{order.id}}
</div>
В чём может быть проблема. Мне что бы двигаться дальше надо хотя бы простейшее связывание сделать. Прилагаю и код, подскажите пожалуйста в чём проблема |
Почему модуль без зависимостей объявляется? Он уже где-то был раньше объявлен? Я за основу беру вот эту структуру https://github.com/angular/angular-p...ree/master/app, то есть компонент со своим шаблоном в отдельной папочке.
И вместо такого orderController.$inject = ['orderService', 'logger']; использую это https://github.com/olov/ng-annotate в системе сборки проекта. |
Да, он был раньше объявлен в app.config. И уже в других фаилах используем get нашего модуля.
angular
.module('adminPanel', [
'ngRoute'
])
.config(configRoutes);
function configRoutes($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'app/components/orderView.html',
controller: 'orderController',
controllerAs: 'order'
})
.otherwise({
redirectTo: '/'
});
}
|
controllerAs: 'order' <div ng-repeat="order in vm.orders"> конфликтов быть не может? |
Цитата:
template: '<div ng-repeat="ord in order.orders">{{ord.id}}</div><h1>{{order.smth}}</h1>',
controller: 'orderController',
controllerAs: 'order'
В контроллере есть следующие данные: vm.orders = []; vm.smth = 'smth to test'; В консоли при обновлении страницы отображается: Код:
Info:Orders were loaded angular.js:13708:18Код:
{ |
Вложений: 1
unsafePtr,
В коде много ошибок было, отправляю исправленную версию во вложении. Вот так выглядит https://postimg.org/image/askgw48n5/ |
Большое Вам спасибо! Подскажите, пожалуйста, хорошие обучающие материалы по Angular.
|
unsafePtr,
Лучшее и актуальное что видел http://www.angularjsbook.com/angular-basics/chapters/ + гайд на офф.сайте. |
| Часовой пояс GMT +3, время: 20:58. |