微信小程序全局变量(globalData)和缓存(StorageSync)的区别和用法

article/2025/10/11 6:22:38

globalData和storage的区别

一、app.globalData 是全局变量,下次进入的时候,就要重新获取,一般用于:

1、保存一些可能涉及安全类的数据,例如资源类,每次需要很准确的,就建议用全局变量。

2、全局变量每次关闭小程序重新打开的时候,都会进行初始化更新。

二、缓存(StorageSync)本地存储,storage 更像是本地的数据库,可以保存更久,一般用于:

1、小程序中的本地存储有同步功能,可用于保存用户信息(用户登录后的一些基本信息)

2、缓存的更新需要使用setStorageSync方法。

globalData的用法

app.js中

app.globalData初始化数据,在app.js中,入口js中,App({onLaunch: function() {},onShow: function(options) {},onHide: function() {},getUserInfo: function(cb) {},globalData: {changeshop: null}
})

app.globalData 存储数据

const app = getApp();
//缓存全局保存
app.globalData.changeshop = changeshop;

在需要使用的地方

const app = getApp()
let changeshop = app.globalData.changeshop;
if (changeshop) {self.setData({addrs: changeshop});
}

StorageSync的用法

1、存入缓存
var addressList= wx.setStorageSync(key,value)

2、取出缓存

var addressList= wx.getStorageSync(key)

3、清除缓存

wx.removeStorageSync(key)

4、清除所有缓存

wx.clearStorageSync()

目前需要实现的是小程序首页在今日最右边放隐藏/显示摘要开关,只显示标题
image.png
我第一想法是后端写一个接口,来控制这里显示/隐藏摘要,后面发现其实用StorageSync就能实现了。

这里的swich的样式需要改一下,小程序自带的有点丑,而且有点大,样式如下:
app.wxss

/*swtich整体以及true背景色*/
.wx-switch-input{width:80rpx !important;height:40rpx !important;background: #43A0E9 !important;border: #43A0E9 !important;
}
/*开关为false背景样式)*/
.wx-switch-input::before{width:82rpx !important;height: 40rpx !important;background: #F3F3F3 !important;border: #F3F3F3 !important;
}
/*中间小球*/
.wx-switch-input::after{width: 40rpx !important;height: 40rpx !important;
}

wxml

<view class="date-box"><view class="f50">今日</view><view><text class="f14">隐藏摘要</text><switch class="ml5" checked="{{isChecked}}" bindchange="changeSwitch"/></view>
</view>

js

const app = getApp()
Component({data: {isChecked: false},methods: {getSwitch(){let isCheck = wx.getStorageSync("isChecked") //取出缓存中的isCheckedif(isCheck){this.setData({isChecked: isCheck})}},changeSwitch(){this.setData({isChecked: !this.data.isChecked})wx.setStorageSync('isChecked', this.data.isChecked) //将isChecked存入缓存}}
})

http://chatgpt.dhexx.cn/article/BEf4leTW.shtml

相关文章

【分布式】什么是分布式技术?

背景&#xff1a; 初代的服务器架构往往比较简单&#xff0c;应用程序、数据库、文件、代码等所有资源都放在一台服务器上&#xff0c;也就是单机结构。随着企业业务量的增多&#xff0c;一台服务器已经难以满足数据处理的需求了&#xff0c;那么对单机进行“复制粘贴”&#…

(分布式网络)基于残差网络的多光谱全色图像分布式融合框架

贡献&#xff1a; ①基于分布式框架(distributed framework)和residual learning&#xff0c;提出了一种鲁棒性强、泛化性能提高的RDFNet泛锐化模型。 ②提出了一种新的三分支泛锐化结构&#xff0c;其中两个分支分别用于提取MS和PAN图像特征。其中最重要的是第三个分支&…

分布式-分布式服务

微服务API 网关 网关的概念来源于计算机网络&#xff0c;表示不同网络之间的关口。在系统设计中&#xff0c;网关也是一个重要的角色&#xff0c;其中最典型的是各大公司的开放平台&#xff0c;开放平台类网关是企业内部系统对外的统一入口&#xff0c;承担了很多业务&#xf…

C++实现轻量级RPC分布式网络通信框架

前言&#xff1a; 2022/4/14更新&#xff1a;  在我重新回顾这篇文章的时候&#xff0c;我觉得里面内容有点乱&#xff0c;主要还是因为RPC里面涉及到很多概念和知识点。本来代码内容就已经挺抽象了&#xff0c;还要结合各种概念&#xff0c;让人难以阅读&#xff0c;所以特地…

C++实现分布式网络通信RPC框架

分布式网络通信rpc框架 项目是分布式网络通信rpc框架&#xff08;项目源代码链接&#xff09; 博文中提到单机服务器的缺点&#xff1a; 硬件资源的限制影响并发&#xff1a;受限于硬件资源&#xff0c;聊天服务器承受的用户的并发有限模块的编译部署难&#xff1a;任何模块小…

分布式网络计算机,分布式网络

分布式网络(Distributed Network) [编辑] 什么是分布式网络 分布式网络也叫网状网络&#xff0c;如图1所示&#xff0c;它是由分布在不同地点的计算机系统互连而成&#xff0c;网中无中心节点。通信子网是封闭式结构&#xff0c;通信控制功能分布在各节点上。 [编辑] 分布式网络…

分布式 - 分布式体系架构:集群和分布式

文章目录 01. 什么是集群&#xff1f;02. 集群为什么可以提高系统的可靠性&#xff1f;03. 集群为什么可以提高系统的性能&#xff1f;04. 什么是分布式计算&#xff1f;05. 如何进行分布式计算&#xff1f;06. 集群如何提高计算效率&#xff1f;07. 集群的优点和缺点&#xff…

分布式集群中网络分区问题

分布式集群中网络分区问题 前言如何判断是否发生了网络分区&#xff1f;集中式架构的网络分区形态非集中式架构中的网络分区形态 网络分区最微妙的地方在哪里&#xff1f;网络分区出现概率较高的场景是什么&#xff1f;网络分区有哪些常见的处理方法&#xff1f;方法一&#xf…

网络:分布式和网络的区别

单机结构 我想大家最最最熟悉的就是单机结构&#xff0c;一个系统业务量很小的时候所有的代码都放在一个项目中就好了&#xff0c;然后这个项目部署在一台服务器上就好了。整个项目所有的服务都由这台服务器提供。这就是单机结构。 那么&#xff0c;单机结构有啥缺点呢&#…

分布式专题(一)什么是分布式

什么是分布式&#xff1f; 任务分解节点通信 分布式和集群的关系&#xff1f; 电商平台&#xff1a; 用户、 商品、订单、 交易 分布式&#xff1a; 一个业务拆分成多个子系统&#xff0c;部署在不同的服务器上 集群&#xff1a; 同一个业务&#xff0c;部署在多个服务器…

分布式系统与网络分区

在OpenStack中&#xff0c;数据库是主要系统“状态”的主要来源。大部分Core Projects都使用传统关系型数据库作为系统数据和状态的存储&#xff0c;另外如Ceilometer使用了MongoDB&#xff0c;还有其他Incubator Projects使用了Redis作为队列或者状态存储。数据库给OpenStack提…

分布式架构网络通信

在分布式服务框架中&#xff0c;一个最基础的问题就是远程服务是怎么通讯的&#xff0c;在Java领域中有很多可实现远程通讯的技术&#xff0c;例如&#xff1a;RMI、Hessian、SOAP、ESB和JMS等&#xff0c;它们背后到底是基于什么原理实现的呢 1、基本原理 要实现网络机器间的…

企业分布式网络监控

IT 基础架构已成为提供基本业务服务的基石&#xff0c;无论是内部管理操作还是为客户托管的应用程序服务。监控IT基础设施至关重要&#xff0c;并且已经建立。SMB IT 基础架构需要简单的网络监控工具来监控性能和报告问题。通常&#xff0c;几个 IT 管理员配置网络设备、防火墙…

分布式网络通信框架(一)——集群和分布式

单机聊天服务器 缺点&#xff1a; 受限于硬件资源&#xff0c;服务器所能承受的用户并发量不够大&#xff1b; 任意模块修改&#xff0c;都会导致整个项目代码重新编译、部署&#xff1b; 系统中&#xff0c;有些模块是CPU密集型&#xff0c;有些是IO密集型&#xff0c;造成…

传统分布式网络架构

在同一个自治系统内&#xff0c;当主机A要和A主机B通讯时&#xff0c;需要把发给主机B的数据包先发给网关路由器A&#xff0c;路由器A根据路由表决定数据包下一跳发给路由器B或C&#xff0c;根据IP报文内携带的目的地址11.8.9.12&#xff0c;在路由表中查找最长匹配路由表项&am…

分布式网络基础

在分布式服务化架构设计中,服务与服务之间通信均是基于网络底层协议来实现的,于是我们需要对网络相关基础知识有一个基本的认知,这样在我们服务与服务之间进行通信(跨进程通信)过程能够在我们的脑图形成一个基本的数据传输流程以及其中的细节问题,这样对于我们在进行网络问题的…

服务计算 -- 搭建私有云

服务计算 – 搭建私有云 文章目录 服务计算 -- 搭建私有云下载VirtualBox及所需镜像安装虚拟机配置虚拟机存储位置创建虚拟机内部虚拟网络创建Base虚拟机&#xff08;Centos为例&#xff09;链接复制第二台虚拟机 远程桌面访问虚拟机安装图形化界面 下载VirtualBox及所需镜像 …

搭建自己的私有云盘

一、准备工作 centos8&#xff0c;nextcloud&#xff0c;mysql 二、安装docker&#xff08;官方文档&#xff09; $ yum install -y yum-utils $ yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo $ yum install -y https://dow…

OwnCloud私有云服务搭建教程

OwnCloud是一款开源的存储云&#xff0c;其作用可以像百度网盘那样存放文件到这个云当中&#xff0c;只要能连上网&#xff0c;手机&#xff0c;平板&#xff0c;电脑都可以从中下载或者上传文件&#xff0c;用起来非常不错&#xff0c;部署的过程也很简单&#xff0c;废话不多…

如何搭建个人私有云盘

前言 文章首发于Noah Sun’s Home 如何搭建个人私有云盘 市场上有很多云盘的产品&#xff0c;比如百度云盘&#xff0c;不过本教程主要目的是要搭建个人私有云盘。查了网上很多资料&#xff0c;个人云盘也有很多&#xff0c;比如nextcloud&#xff0c;owncloud&#xff0c;sea…