J'ai ce code ci-dessous qui utilise ngStorage. mais quand je tente d'exécuter cela fait partie de mon application angulaire je reçois cette erreur à la console:Fournisseur inconnu: ngStorageProvider <- ngStorage lors de la tentative d'utilisation d'Angular ngStorage
Error: [$injector:unpr] Unknown provider: ngStorageProvider <- ngStorage <- signupController
Pourquoi?
signe dans controller.js
var smallTalkzModel = angular.module('smallTalkzModel', ['ui.router', 'luegg.directives', 'ngCookies', 'ngStorage', 'angular-jwt']);
smallTalkzModel.controller('signupController', ['$scope', '$location', '$http', 'userDetails','ngStorage',
function ($scope, $location, $http, userDetails,$localStorage) {
$scope.register_user = function (info) {
$http({
url: '/register_user',
method: 'POST',
data: info
}).then(function (response) {
$localStorage.jwt = response.data.id_token;
$location.path('main');
}, function (error) {
alert(error.data);
});
}
}]);
mise à jour:
changé le code pour inclure le localStoragein $ le contrôleur paramters. maintenant le Mesge d'erreur a disparu, mais le localStorage $ est indéfini après je fais une assigmnet en elle ...
controller('signupController', ['$scope', '$location', '$http', 'userDetails', '$localStorage',
function ($scope, $location, $http, userDetails, $localStorage) {
$scope.login_info = "";
$scope.userDetails = userDetails.isLogged;
$scope.userLogin = false;
$http.get('/online_users')
.success(function (data) {
$scope.usersNumber = data.length;
})
.error(function (data) {
console.log('Error: ' + data);
});
$scope.register_user = function (info) {
$http({
url: '/register_user',
method: 'POST',
data: info
}).then(function (response) {
$localStorage.jwt = response.data.id_token;
$location.path('main');
}, function (error) {
alert(error.data);
});
}
}]);
c'est là mon code l'erreur de jeter localStorage non définie:
mainController.js
smallTalkzModel.controller('mainController', ['$scope', 'sessionInfo', '$location', '$http', 'userDetails','$localStorage',
function ($scope, sessionInfo, $location, $http, userDetails, jwtHelper,$localStorage) {
$scope.login_info = "";
$scope.userLogin = userDetails.isLogged;
var jwt = $localStorage.jwt; // here $localStorage is undefined
..........
}
pas sûr que c'est le problème. J'ai fait npm installer ngstorage --save, et j'ai ajouté le script cdn src à mon index.html – Matoy
N'utilisez pas le cdn si vous l'avez installé, utilisez simplement le chemin local vers le fichier. – fiso
@Matoy, vérifiez ma mise à jour, je pense qu'il y a la réponse. – fiso