В контроллерах CREATE и EDIT много дублированных кодов. Эти контроллеры можно объединить в один для минимизации повторяющегося кода.
Проблема: мне нужно отличить, какой метод использовать при отправке формы - create() или edit(), например.
Решение: я мог бы добавить $scope.mode
, например, и установить $scope.mode='edit'
, если пользователь нажал кнопку "EDIT" или установил $scope.mode='add'
, если пользователь нажал кнопку "ADD".
Я мог бы использовать службы для минимизации повторяющегося кода, но все равно будет дублированный код. Например, в обоих контроллерах у меня есть метод cancel(), который очищает форму и скрывает ее. Я мог бы хранить clearForm() и hideForm() в службе, но этот код будет дублироваться в обоих контроллерах:
$scope.cancel = function() {
Service.clearForm();
Service.hideForm();
};
Вопросы:
- Хорошо ли сочетать контроллеры CREATE и EDIT в AngularJS?
- Есть ли какие-либо хорошие методы для минимизации повторяющегося кода?