我知道如何在会话/本地存储中存储数据。。window.localstorage(key, value)
但现在我正在使用angular,你能告诉我如何在会话、本地或sqlite表中以angular存储数据吗。我做了一个演示,其中我得到了val,但没有商店。
http://plnkr.co/edit/7DaMFWLpFh5lWMHemuQ1?p=preview
// Code goes here
/**
* Created with JetBrains WebStorm.
* User: naveenkumar
* Date: 02/08/14
* Time: 6:29 AM
* To change this template use File | Settings | File Templates.
*/
var app =angular.module('appstart',['ngRoute']);
app.config(function($routeProvider) {
// $locationProvider.html5Mode(true);
$routeProvider
.when('/home', {
templateUrl: 'tem.html',
controller: 'ctrl'
})
.otherwise({ redirectTo: '/home' });
});
app.controller("ctrl",function($scope){
var information={};
$scope.login =function(){
var email=$('#inputEmail').val();
var password=$('#inputPassword').val();
alert(email +":"+password)
information.email= email;
information.password=password;
alert(JSON.stringify(information))
}
})
就localStorage
而言,最好将与"外部世界"(数据库/模型(的交互放在AngularJS服务中
这个JSFiddle应该能帮你。我去掉了Plunkr上的所有其他东西来展示什么是重要的。
我们使用一个服务,这样代码就模块化了,不属于任何一个控制器。除此之外,这并不是什么新奇的事。本质上是一个全球性的类别。
代码如下。我们以类似的方式声明服务。它变成了一个单例,然后我们可以访问任何控制器,就像我对您的"ctrl"控制器所做的那样。
app.service("LocalStorService", function(){
this.store = function(key, value){
window.localStorage.setItem(key, value);
};
this.retrieve = function(key) {
return window.localStorage.getItem(key);
}
});
然后在控制器中。。。。
app.controller("ctrl", function ($scope, LocalStorService) { ...
如果我把这看作是一个"代码组织"问题,那么这就是你所需要做的。