Mam problem z usługą kątową JS.Skorzystaj z usługi w usłudze View Angular JS
mam prostą obsługę:
angular.module('mainApp.services', []).factory('AuthService',
function ($http) {
//var currentUser = null;
//var authorized = false;
//AutoLogin for testing
var currentUser={email: "[email protected]", id: "15"};
var authorized=true;
// initial state says we haven't logged in or out yet...
// this tells us we are in public browsing
var initialState = false;
return {
initialState:function() {
return initialState;
},
login:function (userData) {
//Call API Login
currentUser = userData;
authorized = true;
initialState = false;
},
logout:function() {
currentUser = null;
authorized = false;
},
isLoggedIn:function() {
return authorized;
},
currentUser:function() {
return currentUser;
},
authorized:function() {
return authorized;
}
};
});
następnie Mam proste kontroler
.controller('NavbarTopCtrl', ['$scope','$modal','AuthService',function($scope,$modal,authService) {
$scope.authService=authService; //IS good practice?
console.log($scope);
}])
Nie mogę korzystać z moich usług w polu widzenia. Zrobiłem prosty trik i działa dobrze.
$scope.authService=authService
Ale jak zadzwonić Serwisu bez tego moim zdaniem (plik HTML)?
Sprawdź tutaj, aby zalogować się do serwisu. To działa dobrze. https://github.com/robertjchristian/angular-enterprise-seed –
Co zrobić, gdy masz zestaw funkcji, które chcesz wywoływać z widoku za pomocą polecenia 'ng-click'? Jest dość żmudne zawijanie każdej funkcji, którą chcesz eksponować na widok wewnątrz funkcji wywołującej wewnątrz kontrolera. Myśli? –
myApp.configure (funkcja ($ rootScope) {$ rootScope.foo = function() {console.log ("zadzwoń do mnie z dowolnego miejsca;)")}); – luacassus