2013-07-12 47 views
2

我目前正在与AngularJS构建的移动Web应用程序。基本功能类似于简单的ToDo应用程序:创建项目列表(使用ng-repeat)并将这些项目标记为已选中或从列表中删除。选中的项目正被推送到独立的重复控制器中。在AngularJS存储数据在移动设备上

我现在的问题是:如果你重新载入页面或关闭该应用程序,列表内容都没有了。我必须能够将我的ng-repeat控制器的数据存储到localStorage,IndexedDB,WebSQL,Cookies或任何在移动设备上最优雅的解决方案。

我知道有几个解决方案在那里:还有的角API的$饼干/ $的CookieStore模块,还有基于prestistence.js等的解决方案。但我无法弄清楚哪种解决方案最适合移动设备。我不想限制应用程序到某个plattform,但我主要针对Firefox OS atm。

感谢任何形式的咨询!

回答

0

如果您希望将数据存储在云端,我建议您使用FirebaseAngularfire联合使用。它可以让你在几分钟内启动并运行。

首先,你包括火力地堡和AngularFire:

<script src="https://cdn.firebase.com/v0/firebase.js"></script> 
<script src="angularFire.js" type="text/javascript"></script> 

然后声明火力为您的角度应用的依赖:

var myapp = angular.module('myapp', ['firebase']); 

现在,所有你需要做的是绑定火力地堡网址为型号在您的控制器中:

myapp.controller('MyCtrl', ['$scope', 'angularFire', 
    function MyCtrl($scope, angularFire) { 
    var url = 'https://MyFirebaseURL.firebaseio.com/foo'; 
    $scope.foo = angularFire(url, $scope, 'foo'); 
    } 
]);