【微信小程序开发】微信小程序界面弹窗,数据存储相关操作代码逻辑实现

news2024/11/13 19:13:23

在这里插入图片描述

✨✨ 欢迎大家来到景天科技苑✨✨

🎈🎈 养成好习惯,先赞后看哦~🎈🎈

🏆 作者简介:景天科技苑
🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。
🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi,flask等框架,linux,shell脚本等实操经验,网站搭建,数据库等分享。

所属的专栏:微信小程序开发零基础教学,难点与应用实战总结
景天的主页:景天科技苑

文章目录

  • 1.对话框
    • 1.1 模态对话框
    • 1.2 消息对话框
  • 2.存储
    • 2.1 同步数据存储操作
    • 2.2 异步数据存储操作

1.对话框

在开发微信小程序的时候,不可避免地会使用到弹窗提示,比如点击删除,弹窗提示:确定删除吗? 之类的提示
还有一些消息对话框的提醒

1.1 模态对话框

wx.showModal
官方指导用法
在这里插入图片描述

在开发工具中,方法里面写wx.showModal 会自动将方法里面的用法补齐
####js###

handleShowModel(){
    wx.showModal({
        title: '您确定要删除吗?',
        content: '这里是内容部分',
        //complete里面的参数.cancel是取消  .confirm是确定

        complete: (res) => {
            if (res.cancel) {
                console.log('用户取消了')
            }

            if (res.confirm) {
                 //正常来讲,用户点击了确认会向后端发送请求,做一些操作,比如删除等

                console.log('用户确认了')
            }
        }
    })
}

在这里插入图片描述

###wxml###

<button type="primary" plain bind:tap="handleShowModel">点我弹出对话框</button>

在这里插入图片描述

当我们点击按钮,就会弹出窗口
在这里插入图片描述

看下控制台打印的逻辑交互
在这里插入图片描述

1.2 消息对话框

wx.showToast
官方用法指导
在这里插入图片描述

在这里插入图片描述

###js###

handleShowTost(){
    wx.showToast({
        title: '恭喜您,秒杀成功~~',
        icon:'success',   //图标
        duration:2000  //显示多长时间,单位毫秒
    })
}

###wxml###

<button type="warn" plain bind:tap="handleShowTost">点我弹出消息框</button>

点击按钮
在这里插入图片描述

2.存储

比如登录成功–》后端返回token串【用户登录信息】—》把token存到小程序端–》后续发送请求,要携带token–》后端才能校验通过—》小程序端本地如何存储数据

####wxml####

<button type="default" plain bind:tap="handleSave">存储数据</button>
<button type="primary" plain bind:tap="handleGet">获取数据</button>
<button type="default" plain bind:tap="handleDelete">删除数据</button>
<button type="primary" plain bind:tap="handleClear">清空数据</button>

保存数据分为同步保存和异步保存

//存储数据

2.1 同步数据存储操作

//###########同步###########
// 后期可以使用同步或异步--》感官身上差不多,但是写法不一样
// 同步保存,程序会感觉有点卡卡的,有点慢
handleSave() {
    wx.setStorageSync('name', 'jintian')
    wx.setStorageSync('age', 19)
    // 微信小程序,直接存对象即可---》最终它被转成json格式字符串存到 本地存储中
    wx.setStorageSync('wife', {name:'刘亦菲',age:'37',hobby:'高尔夫'})
},
//获取数据
handleGet() {
    const name=wx.getStorageSync("name")
    const age=wx.getStorageSync("age")
    const wife=wx.getStorageSync("wife")
    console.log(name)
    console.log(age)
    console.log(wife)

},

//删除数据
handleDelete() {
    // 清除微信缓存--删除小程序--用代码
    wx.removeStorageSync('wife')
},

//清空数据
handleClear() {
    wx.clearStorageSync()
},

数据存在开发工具的Storage中,刚开始数据是空的
在这里插入图片描述

当我们点击存储数据,Storage中就有了我们设置的数据
在这里插入图片描述

当我们点击删除数据,wife被删除
在这里插入图片描述

当我们点击清空数据,所有数据被清空
在这里插入图片描述

2.2 异步数据存储操作

异步,与同步比,就是方法中不带Sync
#######异步###########

// 异步保存
handleSave() {
    // 如果不需要获取返回值--》可以直接写,不用写成promis风格
    // 注意,异步存储数据的时候,键值的字段名 必须是key和data

    wx.setStorage({
        key:'name',
        data:'lqz'
    })
    wx.setStorage({
        key:'boyfriend',
        data:{name:'彭于晏',age:67}
    })

},

// 异步获取--》函数定义成 async  内部获取的时候,前面写 await
async handleGet() {
    const boyfriend=await wx.getStorage({key:'boyfriend'})
    console.log(boyfriend.data)
},
handleDelete() {
    wx.removeStorage({
        key:'name'
    })
},
handleClear() {
    wx.clearStorage()
}

点击保存数据,其他都与同步的操作一样
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1911299.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Stable Diffusion】(基础篇三)—— 关键词和参数设置

提示词和文生图参数设置 本系列笔记主要参考B站nenly同学的视频教程&#xff0c;传送门&#xff1a;B站第一套系统的AI绘画课&#xff01;零基础学会Stable Diffusion&#xff0c;这绝对是你看过的最容易上手的AI绘画教程 | SD WebUI 保姆级攻略_哔哩哔哩_bilibili 本文主要讲…

tk Text文本框赋值,清空

import tkinter as tk# 创建主窗口 root tk.Tk() root.title("文本框内容赋值示例")# 创建一个Text小部件 text_area tk.Text(root, height10, width50) text_area.pack()# 将内容赋值给Text小部件 text_area.insert(tk.END, "这是文本框中的内容。\n")#…

【多线程】wait()和notify()

&#x1f970;&#x1f970;&#x1f970;来都来了&#xff0c;不妨点个关注叭&#xff01; &#x1f449;博客主页&#xff1a;欢迎各位大佬!&#x1f448; 文章目录 1. 为什么需要wait()方法和notify()方法&#xff1f;2. wait()方法2.1 wait()方法的作用2.2 wait()做的事情2…

App UI性能测试 - PerfDog使用全教程

App 性能测试指标: 响应、内存、CPU、FPS、GPU渲染、耗电、耗流等。 PerfDog的性能数据更加全面,所以下面以PerfDog来介绍安装使用流程及测试数据的获取与分析。 官网: PerfDog | 全平台性能测试分析专家 第一步,先访问官网进行注册, 注册好账号后,点击下载PerfDog,下…

微信公众平台、公众号、小程序联动

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 &#x1f38f;&#xff1a;你只管努力&#xff0c;剩下的交给时间 &#x1f3e0; &#xff1a;小破站 微信公众平台、公众号、小程序联动 如何通过unionid获取到微信公众openid如何根据code获取微信公…

UNDO 表空间使用率高 active段占用高 无对应事务执行

UNDO表空间使用率告警&#xff0c;查看占用情况 active段占比很高 select tablespace_name,status,sum(bytes/1024/1024) mb from dba_undo_extents group by tablespace_name,status;不同状态的含义&#xff1a;**ACTIVE **&#xff1a;有活动事务在使用 Undo&#xff0c;这…

掌握Qt的QThread:深入多线程编程

​ &#x1f60e; 作者介绍&#xff1a;欢迎来到我的主页&#x1f448;&#xff0c;我是程序员行者孙&#xff0c;一个热爱分享技术的制能工人。计算机本硕&#xff0c;人工制能研究生。公众号&#xff1a;AI Sun&#xff08;领取大厂面经等资料&#xff09;&#xff0c;欢迎加…

产品推荐| 立錡低耗电器件:线性稳压器、Buck 和 Boost 转换器

想让电池用得更久、利用好它的每一份电力&#xff1f;低静态电流的电源转换器是你的必然选择。立錡深谙电源管理之道&#xff0c;为你备好了低耗电的各种产品&#xff0c;其中包括低压差线性稳压器、Buck 转换器和 Boost 转换器&#xff0c;最低消耗仅有 360nA&#xff0c;是无…

前端面试题35(在iOS和Android平台上,实现WebSocket协议有哪些常见的库或框架?)

在iOS和Android平台上&#xff0c;实现WebSocket协议有许多成熟且被广泛使用的库和框架。下面是一些推荐的选项&#xff1a; iOS 平台 SocketRocket 简介&#xff1a;这是由Facebook开源的库&#xff0c;专门为iOS和Mac OS X设计&#xff0c;提供WebSocket连接的功能。它基于S…

Doris数据库---建表、调整表结构操作

一、简介 本文章主讲创建 Doris 自维护的表的语法&#xff0c;以下为本人最近为数据中台接入doris所踩的坑及其解决方案&#xff0c;欢迎点评。 二、doris建表语法&#xff1a; 官网建表语法网址链接&#xff1a;CREATE-TABLE - Apache Doris 官网建表语法如图所示&#xf…

如何查找指定的node版本

1.打开网站 “Node.js — Run JavaScript EverywhereNode.js is a JavaScript runtime built on Chromes V8 JavaScript engine.https://nodejs.org/2. 3. 4.

运动爱好者的新选择:哈氪聆光气传导耳机,轻巧又安全

平时不管是漫步街头、骑行穿梭&#xff0c;还是乘坐公共交通时&#xff0c;我总是喜欢佩戴耳机&#xff0c;借此隔绝外部的喧嚣&#xff0c;享受音乐的乐趣。在户外使用耳机&#xff0c;我更倾向于选择气传导耳机&#xff0c;它们更符合我的需求&#xff0c;因为这种耳机能让我…

Hi3861鸿蒙开发环境搭建

1.1 安装配置Visual Studio Code 打开Download Visual Studio Code - Mac, Linux, Windows选择下载安装Windows系统的Visual Studio Code。 下载后进行安装。Visual Studio Code安装完成后&#xff0c;通过内置的插件市场搜索并安装开发所需的插件如图所示&#xff1a; 1.2 安…

OpenCV对图片中的水果进行识别计算其面积长度等

本项目所用到的技术有&#xff1a; OpenCV Python的一些库&#xff1a;sys,openpyxl,numpy,PyQt5,PIL 本文可以做一些课程设计的项目 本文为作者原创&#xff0c;转载请注明出处&#xff0c;如果需要完整的代码&#xff0c;可以关注我私信 上面是用到的样例图片&#xff0c;一张…

万字总结GBDT原理、核心参数以及调优思路

万字总结GBDT原理、核心参数以及调优思路 在机器学习领域&#xff0c;梯度提升决策树&#xff08;Gradient Boosting Decision Tree, GBDT&#xff09;以其卓越的预测性能和强大的模型解释能力而广受推崇。GBDT通过迭代地构建决策树&#xff0c;每一步都在前一步的残差上进行优…

39 线程库

目录 thread类的简单介绍线程函数参数锁线程交替打印原子性操作库无锁CAS智能指针的线程安全单例模式的线程安全 1. thread类的简单介绍 在c11之前&#xff0c;涉及到多线程问题&#xff0c;都是和平台相关的&#xff0c;如windows和linux下各有自己的接口&#xff0c;这使得…

基于SpringBoot的网上书城管理系统

你好呀&#xff0c;我是计算机学姐码农小野&#xff01;如果有相关需求&#xff0c;可以私信联系我。 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;Java技术&#xff0c;基于SpringBoot框架 工具&#xff1a;Eclipse&#xff0c;MySQL 系统展示 首…

数图助推朝阳佳惠辽宁华联开启数字化导航、精细化管理新纪元!

近期&#xff0c;辽宁省著名零售企业朝阳佳惠与辽宁华联&#xff0c;秉持创新精神&#xff0c;大胆尝试&#xff0c;在品类空间管理方面推出了创新举措。引入了先进的数图可视化陈列管理系统&#xff0c;通过智能化、直观化的方式优化商品布局。此举不仅大幅提高了商品管理的效…

探索Qt的QVariant:灵活的数据交换机制

&#x1f60e; 作者介绍&#xff1a;欢迎来到我的主页&#x1f448;&#xff0c;我是程序员行者孙&#xff0c;一个热爱分享技术的制能工人。计算机本硕&#xff0c;人工制能研究生。公众号&#xff1a;AI Sun&#xff08;领取大厂面经等资料&#xff09;&#xff0c;欢迎加我的…

windows的远程桌面连接docker

1. Docker容器中运行远程桌面服务 (RDP)&#xff1a;您的Docker容器需要安装和运行远程桌面服务。通常&#xff0c;远程桌面服务在Windows操作系统上可用。如果您使用的是Linux容器&#xff0c;则需要安装一个支持RDP协议的桌面环境和RDP服务器。 2. 开放RDP端口&#xff1a;通…