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

招聘网站排行榜2022最新热点事件及点评

招聘网站排行榜,2022最新热点事件及点评,做海外网站的公司,商城网站前台模板该文章是在学习 小满vue3 课程的随堂记录示例均采用 <script setup>&#xff0c;且包含 typescript 的基础用法 前言 Vue3 中新增了一种特殊的监听器 watchEffect&#xff0c;它的类型是&#xff1a; function watchEffect(effect: (onCleanup: OnCleanup) > void,o…
  • 该文章是在学习 小满vue3 课程的随堂记录
  • 示例均采用 <script setup>,且包含 typescript 的基础用法

前言

Vue3 中新增了一种特殊的监听器 watchEffect,它的类型是:

function watchEffect(effect: (onCleanup: OnCleanup) => void,options?: WatchEffectOptions
): StopHandle

下面通过实例来理解下它的用法

一、简单使用

  • 第一个参数就是要运行的 副作用函数 effect
  • 函数内 用到哪些数据 才会 监听哪些数据
  • 且会 立刻执行一次(immediate)
<input type="text" v-model="message1" />
<br />
<input type="text" v-model="message2" />
<br />
import { ref, watchEffect } from "vue";const message1 = ref<string>("飞机");
const message2 = ref<string>("火车");watchEffect(() => {console.log("message1========>,", message1);// 不使用 message2 就不会监听 message2// console.log("message2========>,", message2);
});

二、副作用 effect 的参数

  • effect 的参数 也是一个 函数,用来 注册清理回调
  • 清理回调 会在 该副作用下一次执行前被调用,可以用来清理无效的副作用,例如等待中的异步请求
<input type="text" v-model="message1" />
<br />
<input type="text" v-model="message2" />
<br />
import { ref, watchEffect } from "vue";const message1 = ref<string>("飞机");
const message2 = ref<string>("火车");watchEffect((onCleanup) => {console.log("message11111========>,", message1);console.log("message22222========>,", message2);onCleanup(() => {console.log("onCleanup —————— 下一次运行之前要做的事");});
});

页面刷新,首次打印:

在这里插入图片描述

更改输入框的值,再次打印:

在这里插入图片描述

三、watchEffect 返回值

  • 返回值是一个用来 停止侦听器 的函数,调用后不再侦听
  • 需要注意的是:停止时,不影响最后一次 onCleanup 的执行
<input type="text" v-model="message1" />
<br />
<input type="text" v-model="message2" />
<br />
<button @click="stopWatch">停止watchEffect</button>
const stop = watchEffect((onCleanup) => {console.log("message11111========>,", message1);console.log("message22222========>,", message2);onCleanup(() => {console.log("onCleanup —————— 下一次运行之前要做的事");});
});const stopWatch = () => {stop();
};

页面刷新,首次打印:

在这里插入图片描述

更改输入框的值,再次打印:

在这里插入图片描述

点击按钮 停止侦听,再次打印:

在这里插入图片描述

四、options配置

watchEffect 的第二个参数是配置项:

  • flush:watch 的执行顺序
    • pre | post | sync ,默认:pre,具体含义可以看上一篇 watch 中的解释
    • 一般需要在 dom 更新之后再获取的情况,可以设置为 post
  • onTrack 用于开发环境调试
  • onTrigger 用于开发环境调试
<input id="ipt" v-model="iptVal" />
const iptVal = ref<string>("aa");watchEffect(() => {// 测试 flushconst spanEle = document.getElementById("ipt");// flush = pre 时,打印 null; flush = post 时,打印节点console.log("spanEle========>,", spanEle); // 修改 iptVal 测试 onTrack、onTriggerconsole.log("iptVal============>", iptVal.value);},{flush: "post",// 收集依赖时触发onTrack: () => {debugger;},// 更新时触发onTrigger: () => {debugger;},}
);

五、周边 api

  • watchPostEffect()watchEffect() 使用 flush: 'post' 选项时的别名
  • watchSyncEffect()watchEffect() 使用 flush: 'sync' 选项时的别名
http://www.yayakq.cn/news/143868/

相关文章:

  • 为企业进行网站建设方案app创意设计方案
  • 做数据新闻的网站有哪些方面东莞网站建设东莞
  • 网站开发费的会计处理com域名便宜
  • Html5手机静态网站设计wordpress 4.0
  • 天津魔方网站建设电商网站更适合
  • 老榕树网站建设教学产品设计排版
  • 企业为什么上市网站页面优化分析
  • seo查询 站长工具微信朋友圈推广软文
  • 哪家网络公司做网站企业网站首页
  • 支付宝怎么做网站维护wordpress搭论坛
  • 兰州网站建设报价汕头网站设计定制
  • 河北网站开发费用好看手机网站推荐
  • 随州做网站建立什么指标体系和评价程序规范
  • 防盗网站人做清洁建筑人工作网
  • 东莞做网站哪家公司好如何让别人在百度上搜到自己公司
  • 区块链技术和网站开发结合软件开发知识
  • vs2012 建网站长春营销型网站制作
  • 网站建设与管理适合女生学吗企业网站的制作方式
  • 网站做的一样侵权吗扁平式网站源码
  • php网站数据库怎么上传建设部标准定额网站
  • 网站后台管理系统域名wordpress默认用户名
  • 北京网站建设 优化上海装修公司排名前十强有哪些
  • 做服务器的网站的模板自己创建一个公司
  • 自学网站有哪些自学网3000部末年禁止无需下载
  • 来个网站奖励自己简单的网站模板
  • 北京企业展示网站建设做印刷网站公司简介
  • 深圳网站建设开发公司哪家好深圳网站建设怎样快速
  • 深圳网站开发公营销一型网站建设公司
  • 网站开发及运营代理协议范本深圳网站建设公司开发制作网站
  • 建什么网站好wordpress widgets