1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- export function debounce(func, wait = 3000, immediate = true) {
- let timeout;
- return function () {
- console.log(11112, timeout);
- const context = this;
- const args = [...arguments];
- if (timeout) clearTimeout(timeout);
- if (immediate) {
- const callNow = !timeout;
- timeout = setTimeout(() => {
- timeout = null;
- }, wait);
- if (callNow) func.apply(context, args);
- } else {
- timeout = setTimeout(() => {
- func.apply(context, args);
- }, wait);
- }
- };
- }
- export function throttle(fn, delay = 1000) {
- let lastTime = 0;
- return function () {
- let _this = this;
- let _arguments = arguments;
- let now = new Date().getTime();
- if (now - lastTime > delay) {
- fn.apply(_this, _arguments);
- lastTime = now;
- }
- };
- }
- export function reload(option = {}) {
- // #ifdef H5
- location.reload();
- // #endif
- // #ifdef MP-WEIXIN
- const pages = getCurrentPages();
- const perpage = pages[pages.length - 1];
- perpage.onLoad(option);
- // #endif
- }
|