ionic---数据本地存储sqlite
来源:互联网 发布:做天猫,淘宝客服怎么样 编辑:程序博客网 时间:2024/05/01 08:13
插件安装
ionic plugin add cordova-sqlite-storage
选择操作数据库的库PouchDB
- 下载PouchDBjs库
自行下载或者使用bower管理器下载 - index引入PouchDBjs库
<script src="lib/pouchdb/dist/pouchdb.min.js"></script>
- PouchDBjs中文api(百度翻译)
http://blog.csdn.net/qq_29287973/article/details/53334075
将操作数据库的方法封装成Service
.factory('appSQL', function() { var _db; _db = new PouchDB('appSQL', {adapter: 'websql'}); return { initDB: function () { _db = new PouchDB('appSQL', {adapter: 'websql'}); }, getinfo: function (id,callback) { //获取数据库信息 _db.get(id).then(function (result) { callback(result); }).catch(function (err) { callback(err); }); }, updataInfo:function(id,data,callback){ //更新或者添加数据库信息 _db.get(id).then(function(doc) { return _db.put({ _id: id, _rev: doc._rev, data: data }).then(function (response) { callback(response); }); }).catch(function (err) { if(err.status == '404'){ _db.put({ _id: id, data: data }).then(function (response) { callback(response); }); } }); }, removeInfo: function (id) { //删除数据库信息 _db.get(id).then(function(doc) { return _db.remove(doc); }) } }})
appSQL服务的使用
- 初始化(在app.js中初始化)
.run(function($ionicPlatform,appSQL,$cordovaNativeAudio) { console.log('leason'); $ionicPlatform.ready(function() { // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard // for form inputs) appSQL.initDB(); . . .
- 控制器中调用(将appSQL服务注入)
//更新添加数据$scope.login = function () { var opr = 'login', action = 'login.do ', psw = hex_md5(hex_md5(hex_md5($scope.loginCtrl.psw))), tel = $scope.loginCtrl.tel; var data = { user_name:tel, pwd:psw }; var sqlData = { 'user_name':tel }; if(regularServe.tel.test(tel)){ mainServe.showLoading(); ajaxServe.pubAjax(opr,data,action,function(data){ $cordovaToast.show(data.msg, 'long', 'top'); $rootScope.loginState = true; appSQL.updataInfo(SSID,data.ssid); //可以不写回调 appSQL.updataInfo(PER_INFO,sqlData,function () { mainServe.hideLoding(); $state.go('tab.index', {}, { reload: true }); }); }); }else{ $cordovaToast.show('手机号格式错误!', 'long', 'top'); }}//取已经有的数据数据(判断是否登录)appSQL.getinfo(PER_INFO,function (data) { if(data.status == '404'){ $cordovaToast.show('请先登录!', 'long', 'top'); $location.path('/tab/index/login'); }else { if (data.data.user_name == '' || data.data.user_name == undefined) { $cordovaToast.show('请先登录!', 'long', 'top'); $location.path('/tab/index/login'); } else { console.log('login'); socket.init(); } }});
0 0
- ionic---数据本地存储sqlite
- ionic app中如何使用PouchDB+SQLite作为本地存储
- C#数据本地存储方案之SQLite
- C#数据本地存储方案之SQLite
- C#数据本地存储方案之SQLite
- C# SQLite数据本地存储方案
- Android本地数据存储之SQLite
- C#数据本地存储方案之SQLite
- 在本地创建SQLite数据库存储数据
- ionic 通过PouchDB + SQLite来实现app的本地存储
- ionic 中使用pouchdb + sqlite 来实现app的本地存储
- ionic 数据存储 StorageHelper
- C# Sqlite 本地存储
- C#中数据本地存储方案之SQLite
- Unity项目中使用SQLite来管理本地数据存储
- angularjs ionic框架实现 Localstorage本地存储,页面刷新数据仍在
- Android上常用的几种本地数据存储方式:3、SQLite数据库存储数据
- ionic怎样使用LokiJS作为本地存储
- 并查集或图floyd-2
- Windows定时任务相关与常见异常
- java中BigDecimal使用注意事项
- Java实现一个二分查找
- vue.js学习(四)
- ionic---数据本地存储sqlite
- IntelliJ IDEA 配置Tomcat运行web项目
- runtime源码探究(五)category的加载
- 防火墙技术之---ALG技术
- CSDN日报20170227——《什么样的离开会让老板念念不忘》
- Java静态代码块 静态变量执行顺序
- 58到家数据库30条军规解读 【转】
- ionic---state路由
- redis可视化工具redis-desktop-manager安装和使用