Я в мире углового со времени нескольких месяцев, и я всегда инстанцирован своими контроллерами, такая, что:Как объявить угловой контроллер в метеор?
Сначала я создаю angular.module:
angular.module("dummyApp", ['some-directive']).config(...).run(...);
После того как я могу создать контроллер в этом модуле:
angular.module("dummyApp").controller("dummyCtrl", function($scope) {
// some logic here
});
(Соответствующий html на месте).
Теперь, я начинаю с метеорного и углового вместе. И когда я пытаюсь объявить контроллер ошибка является (и я знаю, что это значит):
Uncaught Error: [$injector:nomod] Module 'dummyApp' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
как на земле, я делаю это в метеор? Я пробую это и много вариантов с тем же результатом. Может быть, я не использую $meteor
? Синтаксис ControllerAs
?
Это разочаровывает меня в том, что что-то очень легкое не торопится.
Update
index.html
<body ng-app="EyEnsure">
<div class="container">
<!-- Navbar goes here -->
<!-- Navbar goes here -->
<nav>
<div class="nav-wrapper">
<a href="#!" class="brand-logo">Logo</a>
<a href="#" data-activates="mobile-demo" class="button-collapse"><i class="material-icons">menu</i></a>
<ul class="right hide-on-med-and-down">
<li><a ui-sref="Map">Map</a></li>
</ul>
</div>
</nav>
<!-- Page Layout here -->
<div class="section card-panel teal lighten-2">
<!-- Aquí se insertan las vistas -->
<div ui-view></div>
</div>
<!-- end layout -->
Main.js:
angular.module("EyEnsure", ['angular-meteor', 'ui.router', 'uiGmapgoogle-maps'])
.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise("/");
$stateProvider
.state('Home', {
url: "/",
template: UiRouter.template('main.html')
})
.state("Map", {
url: "/map",
template: UiRouter.template('map.html'),
//controller: 'mapCtrl', // I tried this..
//controllerAs: 'map'
})
});
Посмотреть, где я хотел бы показать Google Map:
<template name="map.html">
<div ng-controller="mapCtrl">-->
<h1 class="center-align">Map to EyEnsure</h1>
{{tittle}}
<div class="party-details-maps">
<div class="angular-google-map-container">
<ui-gmap-google-map center="party.location || map.center"
events="map.events" zoom="map.zoom">
</ui-gmap-google-map>
</div>
</div>
</div>
MapController.js:
angular.module("EyEnsure")
.controller('mapCtrl', function($scope) {
$scope.tittle = "Hello!";
$scope.map = {
center: {
latitude: 45,
longitude: -73
},
zoom: 8,
events: {}
};
});
Только в случае, мои пакеты, установленные в .meteor/packages
:
meteor-platform
urigo:angular
angularui:angular-ui-router
netanelgilad:ng-cordova
angular:angular-material
materialize:materialize
urigo:angular-ui-router
angularui:angular-google-maps
К сожалению, я не мог воспроизвести проблему (см [угловой метеор демо] (https://github.com/MatthiasEckhart/angular-meteor-demo)). Не могли бы вы предоставить [минимальный пример] (http://stackoverflow.com/help/mcve) или поделиться репозиторием, который воспроизводит проблему? –
Я обновил свой вопрос, спасибо за ваш интерес. – robBerto