код в контроллере:AngularJS Использование функции в нескольких контроллеров
var type = null;
var title = null;
var content = null;
function showMessage(type, title, content) {
$scope.displayMessage = true;
$scope.message = {
type: type,
title: title,
content: content
}
$timeout(function() {
$scope.fadeMessageSuccess = true;
}, 3000);
};
var type = "success";
var title = "Thanks for registering!";
var content = "Your account has successfully been created!";
showMessage(type, title, content);
выше мой код, что я работаю с, и это внутри контроллера в настоящее время. Он отлично работает, но я хочу его очистить и использовать и использовать в нескольких контроллерах. Как я могу идти о оберточной эту часть в функцию, которая будет использоваться по всему приложению, а затем только того, чтобы вызвать последние 4 строки в моих контроллеров:
var type = null;
var title = null;
var content = null;
function showMessage(type, title, content) {
$scope.displayMessage = true;
$scope.message = {
type: type,
title: title,
content: content
}
$timeout(function() {
$scope.fadeMessageSuccess = true;
}, 3000);
};
Я только хочу, чтобы написать следующий код каждый раз, когда я хочу показать сообщение:
var type = "success";
var title = "Thanks for registering!";
var content = "Your account has successfully been created!";
showMessage(type, title, content);
The View:
<div ng-controller="AccountCtrl" ng-cloak="">
<div class="ui {{message.type}} message message-overwrite"
ng-class="{'fade': fadeMessageSuccess} "
ng-show="displayMessage">
<div class="header">
{{message.title}}
</div>
<p>{{message.content}}</p>
</div>
</div>
Возможный дубликат [как повторно использовать функцию в нескольких контроллерах] (http://stackoverflow.com/questions/27012643/how-to-reuse-a-function-in- несколько контроллеров) – tomepejo
Проверьте второй ответ в связанном вопросе. На мой взгляд, создание сервиса и внедрение его в контроллеры - лучшее решение. – tomepejo
Да, но вы не можете использовать $ scope в сервисе, где я теряюсь. –