2013-07-12 51 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'); 
    } 
]);