关于AngularJs数据的本地存储详解


Posted in Javascript onJanuary 20, 2017

第一、创建一个factory来储存和调取你的数据(你可以单独创建一个js文件,按照语义命名如:dataService.js。然后在你的主页面引入这个JS文件)

<!--引入到你的主页面里面-->
<script src="dataService.js"></script>
创建一个factory
'use strict';
angular.module('myApp')
.factory('datadService',['$window',function($window) {
 return{ 
 //存储单个属性
  set :function(key,value){
  $window.localStorage[key]=value;
  }, 
  //读取单个属性
  get:function(key,defaultValue){
  return $window.localStorage[key] || defaultValue;
  }, 
  //存储对象,以JSON格式存储
  setObject:function(key,value){
  $window.localStorage[key]=JSON.stringify(value);
  }, 
  //读取对象
  getObject: function (key) {
  return JSON.parse($window.localStorage[key] || '{}');
  }
 }
}]);

第二、将你创建的这个方法模块【datadService】注入到你要控制器中如下的控制器为【productCtrl】,下面我们创建一个set.js文件,里面代码如下:

'use strict';
angular.module('myApp').controller(
 'productCtrl',
 [ '$scope','datadService',
 function($scope, datadService) {
 $scope.appiAppType = 1;
 //这里面$scope.appiAppType的赋值同样可以通过$http.post或者$http.get
 //等方法返回的参数去赋值,例子如下:
 //$http.post('这里是你所要访问的接口【URL】',这里是你想要上传的参数).success(function(data){
   // $scope.appiAppType = data;
   //});
 datadService.setObject("lodinData", $scope.appiAppType);// 将你获取来的数据存储到你之前创建的【datadService】中,这里面的【lodinData】是KEY(个人理解就是你把数据存到大箱子里面这个箱子就是【datadService】,为了方便在这个箱子里面更好的寻找你想要的数据就给他一个小标签,那就是【lodinData】)
 } ]);

第三、关于存储好的数据如何在不同的控制其中获取到,下面我们创建一个get.js,里面代码如下:

'use strict';
//首先大家要把之前创建好的模块也就是那个装数据的箱子【datadService】放到这个控制器中(也就是模块注入)
//其次大家通过之前咱们设定的标签【lodinData】,用【getObject('key')】方法取到你想要的数据;
//具体实现就一行代码:datadService.getObject('lodinData');「注:把箱子拿出来(datadService)用(getObject)去拿你的这个(lodinData)标签下的数据」
angular.module('myApp').controller(
 'completeCtrl',
 [ '$scope', 'datadService',
 function($scope, datadService) {
 //我们这里取到来上面已经存好的数据:【datadService.getObject('lodinData');】并且把这个数据赋值给了【$scope.LoginList】
 $scope.LoginList = datadService.getObject('lodinData');
 //这里大家可以打印一下$scope.LoginList 看看里面是什么;
 alert(JSON.stringify($scope.LoginList))
 } ]);

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
XML+XSL 与 HTML 两种方案的结合
Apr 22 Javascript
用js实现的抽象CSS圆角效果!!
May 03 Javascript
js页面滚动时层智能浮动定位实现(jQuery/MooTools)
Aug 23 Javascript
jquery remove方法应用详解
Nov 22 Javascript
Javascript的setTimeout()使用闭包特性时需要注意的问题
Sep 23 Javascript
认识Knockout及如何使用Knockout绑定上下文
Dec 25 Javascript
AngularJs学习第五篇从Controller控制器谈谈$scope作用域
Jun 08 Javascript
vue双向绑定的简单实现
Dec 22 Javascript
微信小程序 JS动态修改样式的实现代码
Feb 10 Javascript
JavaScript常用进制转换及位运算实例解析
Oct 14 Javascript
vue-video-player视频播放器使用配置详解
Oct 23 Javascript
vue数据字典取键值项目的字典问题
Apr 12 Vue.js
html5 canvas 详细使用教程
Jan 20 #Javascript
canvas绘制万花筒效果(代码分享)
Jan 20 #Javascript
原生js实现网页顶部自动下拉/收缩广告效果
Jan 20 #Javascript
Angular.js中ng-if、ng-show和ng-hide的区别介绍
Jan 20 #Javascript
轻松理解Javascript变量的相关问题
Jan 20 #Javascript
js+css3实现旋转效果
Jan 20 #Javascript
Bootstrap 手风琴菜单的实现代码
Jan 20 #Javascript
You might like
php侧拉菜单 漂亮,可以向右或者向左展开,支持FF,IE
2009/10/15 PHP
PHP使用PDO访问oracle数据库的步骤详解
2017/09/29 PHP
PHP中register_shutdown_function函数的基础介绍与用法详解
2017/11/28 PHP
基于PHP实现用户登录注册功能的详细教程
2020/08/04 PHP
(function($){...})(jQuery)的意思
2010/07/22 Javascript
ExtJS如何设置与获取radio控件的选取状态
2014/01/22 Javascript
微信小程序 页面传参实例详解
2016/11/16 Javascript
JS判断是否手机或pad访问实现方法
2016/12/09 Javascript
jQuery实现的checkbox级联选择下拉菜单效果示例
2016/12/26 Javascript
vue实现单选和多选功能
2017/08/11 Javascript
微信小程序自定义select下拉选项框组件的实现代码
2018/08/28 Javascript
如何在Vue中使用CleaveJS格式化你的输入内容
2018/12/14 Javascript
JS实现电脑虚拟键盘打字测试
2020/06/24 Javascript
Nodejs环境实现socket通信过程解析
2020/07/03 NodeJs
使用jQuery实现购物车
2020/10/29 jQuery
[41:08]TNC vs VG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[54:30]Liquid vs Newbee 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
深入分析在Python模块顶层运行的代码引起的一个Bug
2014/07/04 Python
Python实现Windows上气泡提醒效果的方法
2015/06/03 Python
使用Python操作FTP实现上传和下载的方法
2019/04/01 Python
PyCharm无法引用自身项目解决方式
2020/02/12 Python
浅析Python模块之间的相互引用问题
2021/02/26 Python
浅谈Python xlwings 读取Excel文件的正确姿势
2021/02/26 Python
CSS3中HSL和HSLA的简单使用示例
2015/07/14 HTML / CSS
马来西亚时装购物网站:ZALORA马来西亚
2017/03/14 全球购物
新加坡鲜花速递/新加坡网上花店:Ferns N Petals
2020/08/29 全球购物
竞选班长演讲稿
2013/12/30 职场文书
12岁生日感言
2014/01/21 职场文书
学校十一活动方案
2014/02/01 职场文书
学生自我评价范文
2014/02/02 职场文书
蓝颜请假条
2014/04/11 职场文书
带香烟到学校抽的检讨书
2014/09/25 职场文书
个人工作总结范文2014
2014/11/07 职场文书
2014年教研员工作总结
2014/12/23 职场文书
客服专员岗位职责范本
2015/04/07 职场文书
mysql如何能有效防止删库跑路
2021/10/05 MySQL