저는 최근에 Angular와 그립을 쌓아 왔고, 그 위에 구축 된 개념에 머리를 쓰려고했습니다. 지금까지 조금 이상한 모든 것 그러나 나는 거기에 가고있다!서비스 및/또는 공장을 사용할 때의 각성의 분리?
어쨌든 Angular를 사용하여 웹 사이트의 일부분을 만들었으므로 (브라우저에서 JavaScript 객체를 조작해야하므로 유스 케이스에 맞을 것으로 보입니다).
이 프로세스의 일부로 요소를 클릭 할 때 모델에 개체를 추가해야했습니다. 이 작업을 수행하는 방법을 파악하는 데는 시간이 좀 걸렸지 만 결국은 제대로 작동하게되었습니다.
var stpApp = angular.module('stpApp', []);
stpApp.controller('multiStopController', function ($scope, $compile, $http) {
$scope.inboundJourney = [{
'DepartureAirport': '',
'DestinationAirport': '',
'DepartureDate': '',
'DepartureTime': 9,
'Class': 'Class'
}];
$scope.addInboundJourney = function() {
$scope.inboundJourney.push({
'DepartureAirport': '',
'DestinationAirport': '',
'DepartureDate': '',
'DepartureTime': 9,
'Class': ''
});
}
});
최대 몇 가지 마크 : 내가 소개하기 services
및 factories
의 개념을 본 적이 좀 더 읽기를하는
<li ng-repeat="journey in inboundJourney">
<input type="text" class="AirportName" ng-model="journey.DepartureAirport" />
</li>
<p class="addMultiStop"><span title="Add a journey" ng-click="addInboundJourney()">+</span>
</p>
지금 나는 아래의 코드로 끝났다. 그래서 내
addInboundJourney
함수가 서비스 나 공장에 있어야합니까, 아니면 지금 컨트롤러처럼 괜찮습니까?
컨트롤러에서 괜찮 으면 서비스 및/또는 공장을 사용할 것을 권장합니까?
서비스 및 팩토리는 거의 동일하며 기본적으로 "싱글 톤"입니다. 여러 컨트롤러에 무언가를 노출하려면 service/factory를 사용하십시오. – mpm