微信小程序如何避免多次点击
编辑:小飞燕 发布时间:2021-03-18 08:04:21
使用小程序时,如果多次,可能会导致页面假死甚至崩溃。那么微信小程序如何避免多次呢?小编带来了解决方案,希望能帮助每个人。
比较近听产品经理经常说,用户多次一个小程序按钮,后台还没有处理完,导致生成多个记录。我们需要在用户后跳转到新的页面。其实这根本不是页面跳转问题,而是程序问题,要尽量避免多次。
以前我们很懒的时候,可能会在前端这样做:
var getuserdataflag=false
getuserdata {
if (getdataflag) {
返回;
}
getdataflag=true
$.品牌ax({
url: '/xxx/getuser ',成功: {
getuserdata=false
//todo
},
错误: {
getuserdata=false
}
})
}
//当有很多小程序接口的时候,我们的代码就变成这样了
var getuserassetflag=true
getuserasset {
if (getdataflag) {
返回;
}
getdataflag=true
$.品牌ax({
url: '/xxx/getuserasset ',成功: {
getuserassetflag=false
//todo
},
错误: {
getuserassetflag=false
}
})
}
在上面的例子中,你会发现,当接口越来越多的时候,维护请求状态的变量也会越来越多,当有依赖关系的时候,维护成本会更高,出错的可能性也会更大。
如何优雅地解决这个问题,其实小程序通过封装请求可以简单自动地处理这个问题。
我们以请求后台数据的微信小程序为例说明一下:
从导入{isobject}。/util '
let promise=require('./libs/bluebird.min ')
让requestlist={} //api请求记录
//记录当前请求的api
导出addrequestkey(键){
requestlist[key]=true
}
//从记录中删除请求的api
export removerequestkey (key) {
requestlist[key]
}
//是否记录了当前请求的api
export hitrequestkey (key) {
return requestlist[key]
}
//获取串口请求的密钥,方便记录
导出getlockrequestkey(数据){
if(!isobject(data)) {
返回数据
}
让品牌axkey='lockrequestkey: '
尝试{
品牌axkey=json.stringify(数据)
} catch (e) {
品牌axkey=数据
}
返回品牌axkey
}
//根据请求的地址,将请求参数组装成api请求的密钥,便于记录
导出getrequestkey(数据){
if(!isobject(data)) {
返回数据
}
让品牌ax key=' method : ' data . method ',url: ' data.url ',data: '
尝试{
品牌ax key=json . stringify(data . data)
} catch (e) {
品牌axkey=data.data
}
返回品牌axkey
}
//服务器上http请求的所有出口
导出http(数据){
if(!isobject(data)) {
throwererror ('品牌ax请求参数必须是json对象: '数据)
}
data.method=(data.method || 'get ').转换为大写
//以下5行是针对所有http请求的防重复请求处理,后面单独分享原理
让品牌axkey=getrequestkey(数据)
if (hitrequestkey(品牌axkey)) {
throwererror('重复请求提交:' 品牌axkey ')
}
addrequestkey(品牌axkey)
//蓝鸟被打包为promisepromise api
返回新((解决,拒绝){
//通过wx.request api向服务器发送http请求
wx.request({
url: data.url,data: data.data,方法:数据.方法,header : data . header | | { ' content-type ' : ' application/json ' },完成: (res) {
//请求完成后,释放记录的键,可以发起下一个请求。
removerequestkey(品牌axkey)
让statuscode=res.statuscode
if(status code===200 | | status code===304){
返回解析(res.data)
}
退货拒绝(res)
}
})
})
}
//通用获取请求方法
导出httpget(数据){
返回http(数据)
}
//一般post请求方法
导出httppost(数据){
data.method='post '
返回http(数据)
}
//此方法适用于串行请求的api
导出lockrequest(数据,fn) {
让品牌axkey=getlockrequestkey(数据)
if (hitrequestkey(品牌axkey)) {
throwererror('重复请求提交:' 品牌axkey ')
}
addrequestkey(品牌axkey)
返回新((解决,拒绝){
fn(数据)。然后((数据){
removerequestkey(品牌axkey)
返回解析(数据)
})。catch((错误){
removerequestkey(品牌axkey)
退货拒绝(错误)
})
})
}
整个思路是统一所有请求条目,然后组装地址、参数、请求类型(get、post)等。由applet api请求到唯*的密钥缓存中。这样,我们就可以知道一个请求的完成状态,当第二个相同的请求到来时,我们可以根据比较后的状态来判断下一个操作。
大家都学会了如何避免多次微信小程序。如果仔细阅读以上信息,应该更容易操作。如果还是不明白,可以在文末留言或者在源社网的小节目频道搜索。
这是标题开头的订阅号。如何添加小程序?标题到此结束
小程序作为独立个体发布的时候,很多用户说很无味,没有完全打通线上线下。不过后来微信正式做了调整,可以实现订阅号添加小程序。那么订阅号如何添加小程序呢?此举的意义何在?
向订购号添加小程序的具体过程
注册:可以先在微信平台注册小程序,然后可以对小程序信息进行改进和开发。
小程序信息改进:填写小程序基本信息,包括小程序名称、小程序头像、微信小程序介绍、服务范围。
小程序开发:完成小程序开发人员的绑定和开发信息的配置后,开发人员可以小程序开发工具,参考开发文档进行小程序的开发和调试。
提交审核发布:小程序开发完成后,将代码提交微信团队审核,审核通过后发布(公测期间暂不支持发布)。
向订购号添加小程序的意义
在目前小程序的所有开放能力中,通过订阅号添加小程序比较为显著,这不仅意味着小程序可以借助流量资源进行推广,也弥补了微信小程序在“内容传播服务”这一链条中服务体验的不足。
在此之前,微信的自媒体除了内容,只能依靠h5作为应用服务载体。虽然有优赞这样的第三方服务平台,提供了非常好的通用解决方案,但是其运营经验还是非常有限的,根本无法和小程序相比。
试着闭着眼睛想象这样一个小程序使用场景。在浏览完某个订阅号文章的内容后,你不再需要使用陌生的“阅读原文”来到达服务,而是使用显眼的小程序入口,加上类似app的操作体验,整个流程过渡顺畅。
同时,对于第三方服务平台,应该有更多的理由向小程序迁移,以提供更好的用户体验。
相信大家看了以上信息,都知道如何在订阅号上添加小程序,以及在订阅号上添加小程序的意义是什么。如果有不明白的地方,可以在文末留言或者在源社网的小节目频道搜索相关信息。
这是第一段的结尾。下面是如何通过在末尾添加一个分段订阅号来添加一个小程序。目前已经获得了358位网友的青睐!正文到此结束
新手怎么做
小程序现在很流行 这样做有用吗?
小节目也会有一定的效果,但也需要有代价的推广。如果站内推广正在进行,你想扩大推广范围,可以尝试去做。如果不做站内推广,没必要做小节目。车站是排水的主战场。希望我的回答能让你满意!
为什么后台的小程序爆款实验室消失了?
几个月前就消失了,相关营销取而代之
小程序有什么用怎么用?
有时候我想让一些线下的客户上线,但是阿里巴巴不是在客户手机上的。这时候小程序旺铺的作用就出来了
支付宝小程序是不是流失很多?
这个还挺多的。
上一篇:门店小程序吸粉怎么做
下一篇:小程序推广公众号广告是怎么回事
猜你喜欢
-
4个微信小程序聊天技巧1155人喜欢
估计有不少人都使用过微信的聊天功能,其实这项功能是通过开发微信小程序达到的,微信小程序聊天功能要怎么开发?一起来看看具体步骤吧。1、整体框架很简单,两个页面。两个tab,并修改window标题栏和tabbar的颜色等属性就好。这个全部在app.json中完成。2、image组…
更新时间:2020-08-17 16:19:34
-
微信小程序跳转到淘宝技巧1112人喜欢
微信小程序可以跳转到淘宝吗?微信小程序如何跳转到淘宝?微信小程序对于有些用户而言其实是个非常好的平台,微信小程序其实可以跳转到淘宝,小程序把微信做成了淘宝,那么微信小程序可以跳转到淘宝吗?微信小程序如何跳转到淘宝呢?淘宝从用户角度而言是个购物工具,从…
更新时间:2020-10-05 09:23:04
-
2个微信小程序接口技巧1075人喜欢
微信小程序开发有哪些接口?据微信官方介绍,微信小程序包括线下扫码、对话分享、消息通知、小程序切换、历史列表、公众号关联和搜索查找等7大功能。当下最受大众喜爱的微信小程序小程序有哪些接口?小编将举例来说明一下微信小程序开发有哪些接口?本文档将带你…
更新时间:2020-08-31 20:09:05
-
6个修改小程序技巧1049人喜欢
小程序授权怎么修改?修改小程序授权代码是什么各位网友们,如果您的微信小程序同意了授权了,但是想要修改小程序授权,对于这种情况,不妨参考一下小编的小程序授权怎么修改的方法吧。小程序授权怎么修改?大家都发现了,涉及到授权获取用户基本信息,同意了小程序授权后…
更新时间:2020-08-24 10:47:00
-
9个小程序红包技巧1039人喜欢
微信发红包很普遍也很简单,但是微信小程序兴起之后,很多商户开始用微信小程序发红包了,这样也有利于大家对小程序本身的关注,接下来就一起来学习下操作方式吧!登录微信支付商户平台在调用接口前有一些工作需要商户登录微信小程序支付商户平台进行操作,请使用微信…
更新时间:2019-11-09 16:29:18
-
12个小程序图片技巧1036人喜欢
微信小程序无法显示图片,图片显示不全怎么办?对于一张网络图片高度太高,而显示不全如何解决?下面小编就来为大家讲解一下。其实我一贯的观点是,所有的问题从api中都能够找到答案,只是有时候缺少耐心,而没有好好去读官方api,出现问题后着急的google、百度、github.…
更新时间:2019-11-10 13:52:04
-
6个小程序投票技巧1034人喜欢
大家想必都使用过微信小程序,微信小程序也丰富了我们的微信生活。下面小编就来为大家讲解一下微信小程序投票系统开发以及微信小程序应用开发。微信小程序七大解读:1、线下扫码:用户可以在微信小程序中使用扫一扫。2、对话分享:用户可以分享微信小程序或其中的任…
更新时间:2020-01-24 16:02:28
-
2个小程序优化技巧1020人喜欢
在小编鼓起勇气开发了两个小程序之后,发现其实可以对开发过程进行一些优化,这样最终开发出来的小程序体验会好很多。以下是微信小程序优化方案,也是一些优化心得,希望能够帮助到大家。1、理解wx:if和hidden,并合理利用,官方文档中并没有明确说出hidden如何使用,要不…
更新时间:2020-08-22 16:44:11
-
3个小程序空格代码技巧1007人喜欢
每一种小程序代码对于小程序的功能的实现都是有不同作用的,那么微信小程序空格代码有什么作用呢?一起来看看以下资料,你就明白了。先上一张处理前的代码图:第一步:在右边的代码界面中右键单击(左边要在“编辑”tab),在出现的菜单中选择“格式化代码”。格式化的效…
更新时间:2020-08-24 10:51:58
-
7个小程序输出技巧1006人喜欢
小程序的输出有很多种形式,之前介绍了小程序输出日志的相关资料,接下来小编要讲解的是微信小程序控制台输出的开发实例,一起来看看吧。在此之前,我们必须先在微信小程序的平台上,设置下域名:注意:微信小程序,不支持普通的http协议,必须通过https协议。于是,我在本地搭…
更新时间:2019-11-08 14:37:35
-
8个微信小程序扫码技巧1006人喜欢
微信小程序扫码接口怎么开通?如果开通了微信小程序扫码接口以后,那么用微信扫普通微信二维码就打开微信小程序了哦。这对于推广微信小程序来说有很大的帮助,以下是具体的方法了。微信小程序扫码接口怎么开通?为了方便小程序开发者更便捷地推广小程序,兼容线下已…
更新时间:2019-11-10 13:53:40
-
10个商家小程序技巧1003人喜欢
微信开放了附近的小程序之后引起了很多小程序使用者的关注,但是这个功能似乎对于商家来说意义更为重大,一起来看看商家怎么入驻微信附近小程序吧。核心提示:首先我们先了解一下那些商户可以使用“附近的小程序”目前可以加入的商家有帐号类型为企业、媒体、政府…
更新时间:2019-11-04 15:51:11