我是Ionic Framework的新手。我正在学习框架并尝试构建一个简单的Android应用程序,它使用json显示一个简单的列表。现在,我想添加一个收藏列表,其中将显示用户选择的项目。当用户点击按钮时,它应该将该项目添加到收藏夹列表中。当用户点击收藏夹选项卡时,它应显示所有收藏项目的列表。 目前我正在尝试使用简单的json和全局控制器。但我担心,如果这是在手机上的Android应用程序上使用它将不会存储所有收藏夹,它会删除所有收藏夹应用程序关闭后。任何人都可以建议一个更好的方法。
非常感谢提前。
答案 0 :(得分:1)
我看到你用本地存储标记了问题,为什么不使用它?此外,您可以使用其中一种流行的mBaaS解决方案,例如Firebase或gunDB。
至于逻辑,它很简单:你创建一个新的数组,用于存储这些收藏夹(你可以在喜欢的按钮点击上处理添加/删除)。然后使用“收藏夹”选项卡上的ng-repeat列出收藏夹阵列。
答案 1 :(得分:0)
执行此操作的最佳方式是pouchdb,我使用相同的方式。!
使用命令安装pouchdb:
bower install pouchdb
在index.html中添加以下行
<script src="lib/pouchdb/dist/pouchdb.min.js"></script>
提供服务:
.factory('FavService', function (UserService) {
var FavService = {};
var localDB;
var user = UserService.getUser();
if (user) {
localDB = new PouchDB('u_' + user.id);
}
FavService.configDbs = function () {
//console.log('config dbs');
var user = UserService.getUser();
if (user) {
localDB = new PouchDB('u_' + user.id);
}
};
FavService.storeToLocal = function (product) { //change function name
if (localDB && product !== "") {
localDB.post(product);
// console.log("Action completed");
} else {
// console.log("Action not completed");
}
};
FavService.getLocalList = function (callback) {
if (localDB) {
localDB.allDocs({
include_docs: true
}).then(function (response) {
// console.log("response :"+JSON.stringify(response));
localDB = response.rows;
callback(response.rows);
}).catch(function () {
callback(null);
});
} else {
FavService.configDbs();
}
};
});