前言:2021.06.14开始知道自己需要用uni-app 开发一个安卓app。并且支持离线(无网络)使用!!大致了解产品需求和应用场景以后开始正式开发!!!
- 使用HBuilder X创建uni-app模板 创建好以后 在manifest.json中的App模块配置 开启SQLite(数据库)后就可以开始运用的项目中了
- 了解 plus.sqlite 的基本语法 http://www.html5plus.org/doc/zh_cn/sqlite.html 在这里认认真真的看完它!!!!!!!
- 开始在项目中运用啦 根据项目需求 我是需要在登陆前初始化项目就是说我需要创建本地表单把后台的数据都存起来
//创建表单运用到的sql //创建sql.js 编写创建表单的sql var formtable=`CREATE TABLE if not exists t_collection_form( "id" TEXT, "gmt_create" TEXT, "gmt_modified" TEXT, "creator_id" INTEGER DEFAULT '-1', "updater_id" INTEGER DEFAULT '-1', "logic_delete" INTEGER DEFAULT 0, "remark" TEXT DEFAULT '-1', "exp" TEXT DEFAULT '-1', "model_id" TEXT DEFAULT '-1', "cn_name" INTEGER DEFAULT '-1', "en_name" INTEGER DEFAULT '-1', "status" INTEGER DEFAULT 0, "desc" TEXT DEFAULT '-1' );`; //在初始化的js中 引用 var sql = require('./sql.js'); //创建表单运用到的放法 function createdTable(sql, name) { executeSQL('public', sql, res => { console.log(name + '创建成功') }, error => { console.log(JSON.stringify(error) + '创建失败') }) }; //调用 这就创建了一个表单 createdTable(sql.formtable, 'formtable'); //因为每次初始化都要删除之前的表单所以先删除在创建 //删除表单 function deleteTable(name) { var sql = `delete from ` + name; executeSQL('public', sql, res => { console.log(name + '删除成功'); }, error => { console.log(name + '删除失败'); }) } //删除表单 deleteTable("formtable");
- 现在开始插入数据给表单 流程大概就是:创建表单->调取后台接口->插入表单
//调取数据 post('url',data).then(res=>{ let data = res.data; data.forEach(item=>{ addSql(item).then(res=>{ },error=>{ console.log(error) }) }) }) //插入数据 function addsql(obj) { //判断有没有传参 if (obj !== undefined) { //判断传的参是否有值 // console.log(obj) var b = (JSON.stringify(obj) == "{}"); if (!b) { //obj传来的参数对象 var id = obj.id || null; //c var code = obj.code || null; //c var name = obj.name || null; // return new Promise((resolve, reject) => { // var sql = 'insert into t_collection_field(cn_name,en_name,pk) values("'+name+'","'+en_name+'","'+pk+'")'; plus.sqlite.executeSql({ name: 'public', sql: 'insert into fromtable(id,code,name) values("' + id + '","' + code + '","' + name + '")', success(e) { resolve(e); // console.log(e) }, fail(e) { reject(e); } }) }) } else { return new Promise((resolve, reject) => { reject("错误添加") }) } } else { return new Promise((resolve, reject) => { reject("错误添加") }) } }
-
好了现在可以秀你的sql能力进行增删改查了!!!!!!
记录而已 随缘解答 !!!