В app.js файле я определили следующее:AngularJS структура проекта и ОПРЕДЕЛЕНИЯ
var app = angular.module("app", ["ngRoute"]);
В testController.js я определил следующее:
app.controller('testController', ['$scope'], function($scope) {
$scope.temp1 = "";
$scope.temp2 = -1;
});
В testService.js я определил следующее:
app.factory('testService', function ($http, $scope) {
'use strict';
return {
list: function (callback) {
$http.get('url?param=' + $scope.temp1).success(callback);
}
};
});
В testController.js и testService.js пуха говорит мне, что приложение является неопределенным. Как я могу указать оба файла, которые приложение является приложением из app.js?
Как сообщить testService.js, что $ scope.temp1 фактически взят из testController.js?
Благодаря
Обтекание в IIFE совершенно не имеет значения, если вы используете 'angular.module ('app')'. «угловое» уже находится в глобальном масштабе, а для остальных нет ничего объявленного, чтобы вы могли его оставить. – iH8
Спасибо. Так что, если мне нужно снова получить приложение для каждого объекта, что такое «одинокий» app.js? Поэтому вместо того, чтобы использовать $ scope.temp1 внутри службы, я должен передать его как параметр своей функции и использовать этот параметр? можете ли вы указать мне пример такого вызова службы? – Amos
Lonely app.js - это просто определить модуль и определить зависимости, которые могут существовать на уровне приложения. Ленивые программисты размещают там все зависимости, но вы действительно должны объявлять их как можно дальше от иерархии. Да, вы правы, пропустите temp в качестве параметра. изменить функцию списка, чтобы принять обратный вызов и параметр температуры –