Путаница с государственным провайдером в coffeescript/javascript
Новое в Angular/Javascript:
Я пытаюсь удалить старый файл coffeescript (rent-roll.coffee) и заменить его на rent-roll.js, но у меня проблема с поставщиком маршрутизации / состояния.
Существующая маршрутизация отлично работает с файлом coffeescript, но я получаю следующую ошибку при замене старого файла:
Ошибка: [ng:areq] Аргумент 'RentRollCtrl' не является функцией, получил неопределенный
Маршрутизация настроена следующим образом:
.state 'manager.accounting.rent-roll',
url: '/rent-roll'
views:
main:
controller: 'RentRollCtrl'
templateUrl: 'manager-dashboard/accounting/rent-roll/rent-roll.tpl.html'
Я подозреваю, что делаю очень элементарную ошибку, связанную с тем, что маршрутизация происходит из другого файла, так как я привык только к очень простой одностраничной маршрутизации.
Мой код rent-roll.js выглядит следующим образом:
(function () {
"use strict";
angular
.module('roomchoice.manager-dashboard.accounting.rent-roll', [
'ui.router'
])
.controller('RentRollCtrl', RentRollCtrl);
function RentRollCtrl($scope, Restangular) {}
и т. д.
Я понимаю, что делаю что-то простое неправильно в создании экземпляра контроллера, но мне не хватает концептуального понимания, чтобы понять, что и документы провайдера состояний не были особенно полезны (или я что-то упустил в них), любая помощь приветствуется!
1 ответ
На вашей главной странице HTML включить <script src="your controller js location"></script>
ссылка на файл контроллера js.
Кроме того, вы создаете новый угловой модуль здесь. Поэтому проверьте, включили ли вы зависимость в основной модуль. Если нет, пожалуйста, добавьте этот модуль в качестве зависимости от основного модуля.
angular.module ('имя вашего основного модуля', [добавьте свою зависимость здесь]);