Empty fiddle for angularjs
by Stepan Kasyanenko
HTML
<div ng-app="ExampleApp">
<div ng-controller="ExampleController">
<input ng-model="text">
<button ng-click="action()">
Action
</button>
</div>
<div ng-controller="SecondController">
<button ng-click="subscribe()">
run Promise
</button>
{{textFromExampleCtrl}}
</div>
</div>
CSS
.error {
color: red;
font-style: italic;
}
JavaScript
angular.module('ExampleApp', [])
.controller('ExampleController', function($scope, mainService) {
$scope.text = "ok";
$scope.action = function() {
mainService.resolve($scope.text);
}
})
.controller('SecondController', function($scope, mainService) {
$scope.subscribe = function() {
mainService.myPromise().then(filterpanel);
}
function filterpanel(handle) {
$scope.textFromExampleCtrl = handle;
console.log('from SecondController', handle);
}
})
.service('mainService', function($q) {
var promise = null;
var deferred = null;
return {
myPromise: function() {
deferred = $q.defer();
promise = deferred.promise;
return promise;
},
resolve: function(val) {
if (deferred)
deferred.resolve(val);
}
}
});