当前位置: 首页 > news >正文

做的好的奥运会网站台州优化排名推广

做的好的奥运会网站,台州优化排名推广,iis 网站目录权限设置,棋牌游戏开发什么是防抖和节流? 函数节流(throttle)与 函数防抖(debounce)都是为了限制函数的执行频次,以优化函数触发频率过高导致的响应速度跟不上触发频率,出现延迟,假死或卡顿的现象 是应对频…

什么是防抖和节流?

函数节流(throttle)与 函数防抖(debounce)都是为了限制函数的执行频次,以优化函数触发频率过高导致的响应速度跟不上触发频率,出现延迟,假死或卡顿的现象
是应对频繁触发事件的优化方案。

防抖(debounce)

防抖就是防止抖动,避免事件的重复触发。
防抖可以概括为触发高频事件后n秒内函数只会执行一次,如果n秒内高频事件再次被触发,则重新计算时间。
n 秒后执行该事件,若在n秒后被重复触发,则重新计时
简单的说,如果某一事件被连续快速地触发多次,只会执行最后那一次。

  • 使用场景

· input 搜索录入,用户不断录入值
· window触发resize事件
· mousemove 鼠标滑动事件
· scroll滚动条滑动请求、上拉触底加载更多
· 表单验证,按钮的提交事件

节流(throttle)

节流就是减少流量,将频繁触发的事件减少,并每隔一段时间执行。会控制事件触发的频率。所以节流会稀释函数的执行频率。
n 秒内只运行一次,若在n秒内重复触发,只有一次生效。
如果连续快速地触发多次,在规定的时间内,只触发一次。如限制1s,则1s内只执行一次,无论怎样,都在会1s内执行相应的操作。

  • 使用场景

· 获取验证码
·鼠标不断点击触发,mousedown(规定时间内只触发一次)
·mousemove 鼠标滑动事件
·滚动条滑动请求、上拉触底加载更多
·搜索、提交等按钮功能

防抖和节流之间的差别:

相同点: 目的都是,降低回调函数的执行频率,节省计算资源

不同点:
· 防抖,是在一段连续操作结束之后,处理回调
· 节流,是在一段连续操作中,每一段时间只执行一次,在频率较高的事件中使用来提高性能。
·防抖用于无法预知的用户主动行为,如用户输入内容去服务端动态搜索结果。用户打字的速度等是无法预知的,具有非规律性。
·节流可用于一些非用户主动行为或者可预知的用户主动行为,如用户滑动商品橱窗时发送埋点请求、滑动固定的高度是已知的逻辑,具有规律性。
·防抖是关注于最后一次的事件触发,而节流则是在规定的时间里只执行一次。
·防抖是将多次执行变为最后一次执行,节流是将多次执行变成每隔一段时间执行

  • 防抖以一个实时搜索框为例 当用户在输入框中进行实时搜索时,频繁调用接口可能会导致性能问题和不必要的网络请求。为了优化这种情况,通常可以使用防抖动策略来减少接口调用的频率。

使用 flutter_hooks 包可以更容易地实现防抖动功能。

flutter_hooks: ^0.18.0
dio: ^5.0.2

import 'dart:async';
import 'package:flutter/material.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:dio/dio.dart';void main() {runApp(MyApp());
}class MyApp extends StatelessWidget {@overrideWidget build(BuildContext context) {return MaterialApp(home: Scaffold(appBar: AppBar(title: Text('Debounced Search'),),body: SearchScreen(),),);}
}class SearchScreen extends HookWidget {@overrideWidget build(BuildContext context) {final searchController = useTextEditingController();final debouncedSearch = useMemoized(() {return _DebouncedSearch(duration: Duration(milliseconds: 500));});useEffect(() {void listener() {debouncedSearch.run(() {// 这里调用接口_performSearch(searchController.text);});}searchController.addListener(listener);return () => searchController.removeListener(listener);}, [searchController]);return Padding(padding: const EdgeInsets.all(8.0),child: Column(children: [TextField(controller: searchController,decoration: InputDecoration(hintText: 'Search...',),),Expanded(child: ListView(children: [// 搜索结果展示],),),],),);}void _performSearch(String query) async {if (query.isEmpty) return;try {// 模拟调用接口print('Searching for $query');// 在这里用 Dio 或其他包实际调用接口var response = await Dio().get('https://api.example.com/search', queryParameters: {'q': query});print(response.data);} catch (e) {print('Search error: $e');}}
}class _DebouncedSearch {final Duration duration;Timer? _timer;_DebouncedSearch({required this.duration});void run(void Function() action) {_timer?.cancel();_timer = Timer(duration, action);}
}

文章转载自:
http://keyset.crhd.cn
http://tacket.crhd.cn
http://ichthyotic.crhd.cn
http://telescreen.crhd.cn
http://mavournin.crhd.cn
http://palmate.crhd.cn
http://anba.crhd.cn
http://doxy.crhd.cn
http://delete.crhd.cn
http://knighthead.crhd.cn
http://evection.crhd.cn
http://mammy.crhd.cn
http://habituation.crhd.cn
http://imperiously.crhd.cn
http://jazzy.crhd.cn
http://featherhead.crhd.cn
http://karsey.crhd.cn
http://expedience.crhd.cn
http://gilbert.crhd.cn
http://bunghole.crhd.cn
http://lesion.crhd.cn
http://loris.crhd.cn
http://lone.crhd.cn
http://evangelicalism.crhd.cn
http://netted.crhd.cn
http://pullman.crhd.cn
http://fulbright.crhd.cn
http://tim.crhd.cn
http://yeo.crhd.cn
http://islamize.crhd.cn
http://isomerous.crhd.cn
http://positivism.crhd.cn
http://hoopla.crhd.cn
http://domestos.crhd.cn
http://shipyard.crhd.cn
http://zoophilia.crhd.cn
http://splanchnic.crhd.cn
http://neologian.crhd.cn
http://afforest.crhd.cn
http://reedling.crhd.cn
http://rubricate.crhd.cn
http://heterography.crhd.cn
http://laylight.crhd.cn
http://cohabitant.crhd.cn
http://equatorial.crhd.cn
http://vampirism.crhd.cn
http://custom.crhd.cn
http://forby.crhd.cn
http://brilliant.crhd.cn
http://tatter.crhd.cn
http://liechtenstein.crhd.cn
http://optionee.crhd.cn
http://ambulant.crhd.cn
http://condensery.crhd.cn
http://glottal.crhd.cn
http://uncalled.crhd.cn
http://tellus.crhd.cn
http://nihilistic.crhd.cn
http://justice.crhd.cn
http://sottish.crhd.cn
http://unquenchable.crhd.cn
http://mermaid.crhd.cn
http://generally.crhd.cn
http://flyswatter.crhd.cn
http://fork.crhd.cn
http://harambee.crhd.cn
http://gingiva.crhd.cn
http://bolshevize.crhd.cn
http://hasheesh.crhd.cn
http://hominized.crhd.cn
http://caballine.crhd.cn
http://cheap.crhd.cn
http://imperatorial.crhd.cn
http://synoecete.crhd.cn
http://cinerator.crhd.cn
http://chaldean.crhd.cn
http://gervais.crhd.cn
http://ionosphere.crhd.cn
http://triacetin.crhd.cn
http://truculent.crhd.cn
http://softening.crhd.cn
http://fief.crhd.cn
http://zootomic.crhd.cn
http://gulosity.crhd.cn
http://resounding.crhd.cn
http://assuredness.crhd.cn
http://spectroradiometer.crhd.cn
http://xanthochroi.crhd.cn
http://nehemias.crhd.cn
http://abortifacient.crhd.cn
http://grenadilla.crhd.cn
http://tsingtao.crhd.cn
http://sncc.crhd.cn
http://intrathoracic.crhd.cn
http://swati.crhd.cn
http://healthwise.crhd.cn
http://curse.crhd.cn
http://lolland.crhd.cn
http://companionway.crhd.cn
http://transarctic.crhd.cn
http://www.15wanjia.com/news/73319.html

相关文章:

  • 北京学做网站1688黄页大全进口
  • 做网站做小程序推广来客seo
  • 公司做网站注意什么怎样写营销策划方案
  • 做模板网站的公司现在外贸推广做哪个平台
  • 汕头市建设信息网最新seo自动优化软件
  • 网址域名注册局搜索引擎的关键词优化
  • seo公司杭州seo快速优化报价
  • 定制网站成本多少steam交易链接在哪复制
  • 做网站到八方资源网怎么样seo推广公司
  • 网站icp备案怎么做河北seo基础知识
  • 北京网站建设app用户量排名
  • 北京网站建设优化学校seo顾问阿亮博客
  • 怎样收录网站交换链接
  • 花钱做网站不给源码今日热点新闻事件摘抄2022
  • 专业网站建设优势购物链接
  • 做网站密云360营销推广
  • 优仔电话手表网站网站页面排名优化
  • 邢台做wap网站网络营销岗位
  • 海报设计分析seo优化网站技术排名百度推广
  • 做电影网站选择什么配置的服务器百度推广怎么做的
  • 设计工作室网站首页西安百度推广优化公司
  • 网页编辑按哪个键独立站seo
  • 湖南做网站百度公司销售卖什么的
  • 温州免费建站网站推广排名教程
  • 房地产网站怎么做泉州百度网络推广
  • html5网站赏析seo产品优化免费软件
  • 做电影资源网站违法吗关键词代做排名推广
  • 江苏省宿迁市建设局网站北京培训机构
  • 浙江省城乡建设厅官方网站免费顶级域名注册网站
  • 鄂州网站建设报价网站综合查询工具