Здравствуйте!
Учу Ангуляр и разрабатываю по ходу маленькое приложение.
Есть список элементов, они все в сервисе. так же в сервис хочу добавить функции по добавлению, удалению и т.д. элементов. А в контролере уже их просто вызывать. Удалять получается, а вот добавить нет, поэтому прошу помощи.
Код сервиса:
angular.module('items').factory('itemsFactory', function () {
var items = {};
items.list = [
//список обьектов
];
items.addItem = function(newItem) {
items.list.push(newItem);
}
items.deleteItem = function(index){
items.list.splice(index, 1);
};
return items;
});
Конроллер:
angular.module('main').controller('itemCtrl', function($scope, itemsFactory) {
$scope.items = itemsFactory.list;
$scope.deleteItem = function(index) {
itemsFactory.deleteItem(index);
};
$scope.addItem = function(index) {
itemsFactory.addItem(index);
};
HTML:
<form name="itemsForm" novalidate ng-controller="itemCtrl" ng-submit="addItem(newItem)">
<input ng-model="newItem.name" >
<input type="submit" value="+" >
</form>
Проблема в том, что после добавления поле инпута должно очищаться, чтобы можно было добавить еще элемент, но вот как не бьюсь - не могу это сделать
Храню в отдельных файлах. Пробовал создавать переменную для newItem (обьект с пустыми параметрами), но вот после добавления, толи потому, что передаем аргумент в тело функции, то ли даже не знаю почему... никак не получается ее обнулить.