angular.js 本地資料儲存LocalStorage
阿新 • • 發佈:2018-11-20
定義工廠模式 factory 本地儲存資料服務
app.factory('locals', ['$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] || '{}');//獲取字串並解析成物件 } } }]);
控制器 contorller 中呼叫,先注入依賴 locals 在呼叫 locals 裡面的 set,get等方法
app.controller('supplyAddCtrl', function ($scope, $http, $location, locals, $timeout, $compile) { //存 locals.set("firstpos", firstpos);//字串 locals.setObject("secondpos", secondpos);//物件 //取 locals.get("firstpos");//字串 locals.getObject("secondpos");//物件 }