Я только начинаю изучать Angular.js, и я смотрел project.js в примере "Провод вверх" на домашней странице Angular.
Я запутался в параметрах в функциях контроллера:
function ListCtrl($scope, Projects) {
...
}
function CreateCtrl($scope, $location, $timeout, Projects) {
...
}
function EditCtrl($scope, $location, $routeParams, angularFire, fbURL) {
angularFire(fbURL + $routeParams.projectId, $scope, 'remote', {}).
then(function() {
...
});
}
Эти функции контроллера вызываются в routeProvider, но ни один из параметров не указан.
$routeProvider.
when('/', {controller:ListCtrl, templateUrl:'list.html'}).
when('/edit/:projectId', {controller:EditCtrl, templateUrl:'detail.html'}).
when('/new', {controller:CreateCtrl, templateUrl:'detail.html'}).
otherwise({redirectTo:'/'});
});
Единственное, что я могу найти до сих пор, возможно, объясняет, что происходит "Инъекционные услуги в контроллерах" , в котором объясняются $location
, $timeout
, но не параметр angularFire
и fbURL
.
Мои конкретные вопросы:
-
Какими могут быть параметры контроллера?
-
Где функции контроллера вызываются с их параметрами? Или параметры не вызываются, а просто связаны с контроллером, где ассоциация встречается с большим количеством магии Angular.js(если да, могу ли я увидеть исходный код на github)?
-
Где указано
angularFire
? -
Как
fbURL
в параметре, связанном с:angular.module('project', ['firebase']). value('fbURL', 'https://angularjs-projects.firebaseio.com/'). factory ...
-
Есть ли место, где я могу видеть все службы, например.
$location
и$timeout
, что Angular.js предоставляет? (Я пытался найти список, но не смог.)