uniapp微信小程序常用防抖函数及调用

先看代码,复制使用即可。(防抖一般用于按钮使用,避免如登陆,购买等多次调用,如多次点击购买按钮在网速较慢下可能生成多个订单信息等)

这里只是一个封装调用的简单流程,如您使用我们官方产品 uview, 防抖参考: throttle & debounce节流防抖.

您需要先定义一个js文件 复制以下代码

//防抖原理:一定时间内,只有最后一次操作,再过times毫秒后才执行函数
let timeout = null;
				// 执行函数  时间      是否立即执行
function debounce(func, times = 500, immediate = false) {
	// 清除定时器
	if (timeout !== null) clearTimeout(timeout);
	// 立即执行,传true 则不进行防抖 一般不传递第三个参数
	if (immediate) {
		var callNow = !timeout;
		timeout = setTimeout(function() {
			timeout = null;
		}, times);
		if (callNow) typeof func === 'function' && func();
	} else {
		// 设置定时器,当最后一次操作后,timeout不会再被清除,所以在延时times毫秒后执行func回调方法
		timeout = setTimeout(function() {
			typeof func === 'function' && func();
		}, times);
	}
}

export default debounce

调用方式如下

import debounce from '配置路径'
methods:{
	//不需要自定义 时间和立即执行时
	getCode:debounce(function(){
		//您的逻辑操作
	})
	//需要自定义 时间和立即执行时
	getCode:debounce(function(){
		//您的逻辑操作
	},1000,true)
}

其他有关uniapp的疑问或者此方法不理解的地方您可留言,我会尽快回复并帮您解决。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
好的,我可以回答你关于 uniapp 微信小程序多环境配置及使用的问题。 首先,多环境配置可以让你在开发过程中轻松地切换不同的环境,比如开发环境、测试环境和生产环境。在 uniapp 中,我们可以通过配置不同的变量来实现多环境的配置,下面是具体的步骤: 1. 在项目根目录下创建不同环境的配置文件,比如 dev.env.js、test.env.js 和 prod.env.js。 2. 在配置文件中定义不同环境下的变量,比如接口地址、图片地址等。 3. 在项目中引入对应的配置文件,并将变量挂载到全局的 Vue 实例上。 4. 在代码中使用挂载的变量。 下面是一个示例代码: // dev.env.js module.exports = { API_BASE_URL: 'https://dev-api.example.com', IMG_BASE_URL: 'https://dev-img.example.com' } // test.env.js module.exports = { API_BASE_URL: 'https://test-api.example.com', IMG_BASE_URL: 'https://test-img.example.com' } // prod.env.js module.exports = { API_BASE_URL: 'https://api.example.com', IMG_BASE_URL: 'https://img.example.com' } // main.js import Vue from 'vue' import App from './App' import envConfig from './config/' + process.env.NODE_ENV + '.env.js' Vue.prototype.$envConfig = envConfig new Vue({ el: '#app', render: h => h(App) }) // api.js import axios from 'axios' export function getList() { return axios.get(`${this.$envConfig.API_BASE_URL}/list`) } // 在组件中使用 methods: { async getList() { try { const res = await this.$http.getList() // do something with res } catch (err) { console.error(err) } } } 以上就是 uniapp 微信小程序多环境配置及使用的基本步骤,希望能对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值