当前位置: 首页 > news >正文

uniapp:sqlite最详细教程,小白可直接粘贴复制

在这里插入图片描述
新建uniapp项目,需要4个页面,
loading 启动页:打开数据库,判断数据表是否存在,表内是否有数据,创建数据表的逻辑。
register 注册页:数据表已存在,但是没有数据,需要进入该页面注册第一条数据
index 首页:展示数据列表内的数据,可修改默认,添加新数据
edit 编辑:编辑,更新数据
以下代码已测试兼容安卓IOS,可直接粘贴复制到自己项目里使用,
数据字段自行添加/修改,修改后别忘了把sqlite.js内的对应上
在这里插入图片描述

loading.vue

<template><view class="content"></view>
</template><script>import {openDatabase, // 打开/创建:数据库createWalletTable, // 创建钱包表checkTableExists, // 检查数据表是否存在checkTableHasData, // 检查表内是否有数据insertWalletData, // 添加钱包数据queryWalletData, // 获取表数据updateWalletData, // 更新表数据deleteWalletData, // 删除表数据closeDatabase, // 关闭数据库} from '@/static/sqlite.js'export default {async onLoad() {// 1. 打开/创建:数据库let res_openDatabase = await openDatabase()console.log('打开数据库:', res_openDatabase);// 2. 检查数据表是否存在let res_checkTableExists = await checkTableExists('wallets')console.log('数据表是否存在:', res_checkTableExists);if (res_checkTableExists) {// 如果表存在,检查表中是否有数据let res_checkTableHasData = await checkTableHasData('wallets')console.log('表内有数据吗:', res_checkTableHasData);if(res_checkTableHasData){uni.redirectTo({url: '/pages/index/index',})}else{uni.redirectTo({url: '/pages/index/register',})}} else {// 不存在创建数据表,并去注册let res_createWalletTable = await createWalletTable()console.log('创建成功:', res_createWalletTable);uni.redirectTo({url: '/pages/index/register',})}},methods: {}}
</script>

register.vue

<template><view class="content"><view class="">第一次注册,id默认1,is_default默认1(默认地址),不能修改</view><view class="value"><view class="item"><text>id:</text><input type="text" placeholder="请输入" v-model="id" disabled/></view><view class="item"><text>name:</text><input type="text" placeholder="请输入" v-model="name"/></view><view class="item"><text>chain:</text><input type="text" placeholder="请输入" v-model="chain"/></view><view class="item"><text>password:</text><input type="text" placeholder="请输入" v-model="password"/></view><view class="item"><text>address:</text><input type="text" placeholder="请输入" v-model="address"/></view><view class="item"><text>mnemonic:</text><input type="text" placeholder="请输入" v-model="mnemonic"/></view><view class="item"><text>privateKey:</text><input type="text" placeholder="请输入" v-model="privateKey"/></view><view class="item"><text>is_default:</text><input type="text" placeholder="请输入" v-model="is_default" disabled/></view></view><button class="btn" type="default" @click="add">注册添加数据</button></view>
</template><script>import {openDatabase, // 打开/创建:数据库createWalletTable, // 创建钱包表checkTableExists, // 检查数据表是否存在checkTableHasData, // 检查表内是否有数据insertWalletData, // 添加钱包数据queryWalletData, // 获取表数据updateWalletData, // 更新表数据deleteWalletData, // 删除表数据closeDatabase, // 关闭数据库} from '@/static/sqlite.js'export default {data() {return {id:'1',chain:'BNB',address:'我的地址',mnemonic:'我的助记词',privateKey:'我的私钥',name:'钱包名称',password:'123456',is_default:1}},async onLoad() {},methods: 

http://www.mrgr.cn/news/58272.html

相关文章:

  • 信息安全工程师(55)网络安全漏洞概述
  • List、Map
  • 艺术二维码 API 的申请与运用
  • 使用 Python 的 BeautifulSoup(bs4)解析复杂 HTML
  • Angular 框架入门教程:从安装到路由、服务与状态管理详解
  • JavaWeb合集12-Redis
  • Linux 学习笔记(十七)—— 文件系统
  • MultipartFile文件与传递body并存问题
  • RK3568 android11 usb接口TP与电磁笔触点上报优先级问题
  • 【运维心得】U盘启动安装Dell服务器踩坑指南
  • 【JavaScript】JavaScript 进阶-2-构造函数数据常用函数(更新中)
  • Python:背景知识及环境安装
  • Linux内核常见的网络丢包场景分析,零基础入门到精通,收藏这一篇就够了
  • 强推!清华大佬强力打造,绝对是2024年人工智能入门天花板教程!
  • 智慧农业大数据平台:智汇田园,数驭未来
  • 220V降12V0.5A500mA恒压WT5105
  • 【话题】创智时代:人工智能重塑生活与工作
  • 空间转录组 | ​Stereo-seq在疾病中的应用研究
  • C++ 设计模式 - 每日持续更新中
  • httpd服务
  • 怎么区分主谓宾I love you与主系表I am fine? 去掉宾语看句子完整性 主系表结构则侧重于描述主语的状态、特征或性质
  • 移远通信亮相重庆燃气展:以多领域技术实力推动燃气发展安全化、智能化
  • (自用复习题)常微分方程07
  • 如此酷的锁屏时钟屏保 怎么能不告诉你
  • Vue3侦听器监听数据变化早于mapContext初始化的问题
  • 软物质流变探究:从宏观微观差异,到水凝胶界面特性