[英]How to use $cookie in factory/service in angular js?
在我正在构建的应用程序之一中,我想在service(.factory(...))中使用$ cookie。
当我使用$ cookie时,出现$ injector / module错误。 在这方面有人可以帮助我吗?
这是我写的代码。
app.factory("AuthenticationService", function($location,$cookies,setUserCreds)
{
return {
login: function(credentials) {
if (credentials.username == "MyName" || credentials.password == "admin") {
$cookies.put("userName",credentials.username);
$location.path('/home');
}
}}});
这是角度文档中的示例:
myApp.factory('apiToken', ['clientId', function apiTokenFactory(clientId) {
var encrypt = function(data1, data2) {
// NSA-proof encryption algorithm:
return (data1 + ':' + data2).toUpperCase();
};
var secret = window.localStorage.getItem('myApp.secret');
var apiToken = encrypt(clientId, secret);
return apiToken;
}]);
'clientId'
是模块知道服务所依据的名称,而传递给工厂函数的参数是工厂所知道的名称。 您只有参数。
您的外观应如下所示:
app.factory("AuthenticationService",['$location', '$cookies', 'setUserCreds', function($location, $cookies, setUserCreds) {
...
}]);
该$ injector错误通常等于“您在谈论什么服务?”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.