首页 web前端 js教程 关于AngularJs数据的本地存储实例详解

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

Jun 27, 2017 am 11:52 AM
angularjs javascript 存储

本文主要介绍了每一个独立的JS文件或者不同的控制器如何实现数据的共享与交互的方法。具有一定的参考价值,下面跟着小编一起来看下吧

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

<!--引入到你的主页面里面-->

<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文件,里面代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

'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,里面代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

'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))

 } ]);

登录后复制

以上是关于AngularJs数据的本地存储实例详解的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
两个点博物馆:所有展览以及在哪里可以找到它们
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
两个点博物馆:所有展览以及在哪里可以找到它们
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

华为明年将推创新 MED 存储产品:机架容量超过 10 PB,功耗低于 2 kW 华为明年将推创新 MED 存储产品:机架容量超过 10 PB,功耗低于 2 kW Mar 07, 2024 pm 10:43 PM

华为明年将推创新 MED 存储产品:机架容量超过 10 PB,功耗低于 2 kW

如何使用WebSocket和JavaScript实现在线语音识别系统 如何使用WebSocket和JavaScript实现在线语音识别系统 Dec 17, 2023 pm 02:54 PM

如何使用WebSocket和JavaScript实现在线语音识别系统

WebSocket与JavaScript:实现实时监控系统的关键技术 WebSocket与JavaScript:实现实时监控系统的关键技术 Dec 17, 2023 pm 05:30 PM

WebSocket与JavaScript:实现实时监控系统的关键技术

如何使用WebSocket和JavaScript实现在线预约系统 如何使用WebSocket和JavaScript实现在线预约系统 Dec 17, 2023 am 09:39 AM

如何使用WebSocket和JavaScript实现在线预约系统

Ubuntu上的Git安装过程 Ubuntu上的Git安装过程 Mar 20, 2024 pm 04:51 PM

Ubuntu上的Git安装过程

如何利用JavaScript和WebSocket实现实时在线点餐系统 如何利用JavaScript和WebSocket实现实时在线点餐系统 Dec 17, 2023 pm 12:09 PM

如何利用JavaScript和WebSocket实现实时在线点餐系统

JavaScript和WebSocket:打造高效的实时天气预报系统 JavaScript和WebSocket:打造高效的实时天气预报系统 Dec 17, 2023 pm 05:13 PM

JavaScript和WebSocket:打造高效的实时天气预报系统

简易JavaScript教程:获取HTTP状态码的方法 简易JavaScript教程:获取HTTP状态码的方法 Jan 05, 2024 pm 06:08 PM

简易JavaScript教程:获取HTTP状态码的方法

See all articles