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

牛杂网这类网站怎么做的简述影响关键词优化的因素

牛杂网这类网站怎么做的,简述影响关键词优化的因素,网站图片处理方案,私人影吧服务器相同点 都是要根据一个或多个响应式数据进行监听 不同点 computed 如要return回来一个新的响应式值,且这个值不允许直接修改,想要修改的话可以设置set函数,在函数里面去修改所依赖的响应式数据,然后计算属性值会基于其响应式依…

相同点

都是要根据一个或多个响应式数据进行监听

不同点

  • computed 如要return回来一个新的响应式值,且这个值不允许直接修改,想要修改的话可以设置set函数,在函数里面去修改所依赖的响应式数据,然后计算属性值会基于其响应式依赖被缓存
  • watch 监听一个或多个响应式数据,当数据发生变化的时候可以去做一些修改其他值执行异步操作,如发送求情,修改dom,然后watch默认是懒侦听的,也就是说刚进入页面的时候不会触发,仅在侦听源发生变化的时候才会执行回调函数,这个时候我们可以设置immediate为true,这表示在侦听器创建时立即触发回调,如果侦听源是对象,我们想做深层次侦听我们需要设置deep为true

computed

  • 接受一个getter函数,返回一个只读的响应式ref对象该ref对象通过.value暴漏getter函数的返回值
<script setup lang="ts">const a = ref('小明');const b = ref('小红');const c = computed(() => `${a.value}_${b.value}`);
</script><template>{{ c }}
</template>

这个时候页面上会显示 小明_小红
这个时候也不知道有了个什么样的需求,我想要给c赋值,如c.value = 小花
在这里插入图片描述
可以看到是不行的,因为这个时候computed返回的只是一个只读的ref,接着往下看
在这里插入图片描述

<script setup lang="ts">const a = ref('小明');const b = ref('小红');const c = computed({get() {return `${a.value}_${b.value}`;},set(val) {console.log(val);},});const changeC = () => {c.value = '小花';};
</script><template>{{ c }}<a-button @click="changeC">改变C</a-button>
</template>

这个时候点击按钮后,可以看到控制台会输出小花,这个时候你可以做一些操作比如
在这里插入图片描述
这个时候页面上就会展示
在这里插入图片描述

  • vue的计算属性会自动追踪响应式依赖,它会检测到c依赖于a,b,也就是说当a或者b改变时,c就会同时更新
  • 计算属性值会基于其响应式依赖被缓存 一个计算属性仅在其响应式依赖更新时才重新计算,这意味着ab不改变,无论访问c多少次都会立即返回先前计算的结果,而不用重复执行getter函数
  • getter不应有副作用,也就是说不要在计算属性里面去改变其他状态,不要在getter中去做异步请求以及改变dom,如果有这种需求则要到watch去操作
  • 避免直接修改计算属性值,如果想要修改计算属性的值,应该去更新它所依赖的响应式字段,也就是说我们想要改变c那么我们应该想的是如何去改变ab

watch

侦听一个或多个响应式数据源,并在数据变化时调用所给的回调函数

const x = ref(0)
const y = ref(0)// 单个 ref
watch(x, (newX) => {console.log(`x is ${newX}`)
})// getter 函数
watch(() => x.value + y.value,(sum) => {console.log(`sum of x + y is: ${sum}`)}
)// 多个来源组成的数组
watch([x, () => y.value], ([newX, newY]) => {console.log(`x is ${newX} and y is ${newY}`)
})

如果有以下需求
在这里插入图片描述
要是用

<script setup lang="ts">const obj = reactive({count: 0,});watch(// 提供一个getter函数() => obj.count,count => {console.log('做一些操作');});
</script>

在这里插入图片描述

watchEffect

我的理解就是,比如说我们要监听一个id发生变化的时候,我们要去请求一个接口获取详情
watch的写法

const todoId = ref(1)
const data = ref(null)watch(todoId,async () => {const response = await fetch(`https://jsonplaceholder.typicode.com/todos/${todoId.value}`)data.value = await response.json()},{ immediate: true }
)

我们需要监听todoId,然后…
现在如果使用watchEffect,可以这样写

watchEffect(async () => {const response = await fetch(// 逻辑里面必须要有todoId的使用,否则todoId变化了,也不会监听`https://jsonplaceholder.typicode.com/todos/${todoId.value}`)data.value = await response.json()
})

在这里插入图片描述


文章转载自:
http://underlooker.wqpr.cn
http://autonomist.wqpr.cn
http://bladderworm.wqpr.cn
http://modulator.wqpr.cn
http://veining.wqpr.cn
http://corp.wqpr.cn
http://anthropic.wqpr.cn
http://lapper.wqpr.cn
http://tigris.wqpr.cn
http://gangmaster.wqpr.cn
http://hypersexual.wqpr.cn
http://boubou.wqpr.cn
http://iges.wqpr.cn
http://humanics.wqpr.cn
http://canal.wqpr.cn
http://unwisdom.wqpr.cn
http://pet.wqpr.cn
http://colacobiosis.wqpr.cn
http://cholecystagogue.wqpr.cn
http://altruism.wqpr.cn
http://leakproof.wqpr.cn
http://turnaround.wqpr.cn
http://mycologist.wqpr.cn
http://avenging.wqpr.cn
http://ribonuclease.wqpr.cn
http://polyanthus.wqpr.cn
http://lawrentian.wqpr.cn
http://goat.wqpr.cn
http://judaica.wqpr.cn
http://viceroyship.wqpr.cn
http://alors.wqpr.cn
http://bricolage.wqpr.cn
http://unslumbering.wqpr.cn
http://jargonise.wqpr.cn
http://sumptuously.wqpr.cn
http://disgusted.wqpr.cn
http://frameshift.wqpr.cn
http://parve.wqpr.cn
http://haori.wqpr.cn
http://see.wqpr.cn
http://calculative.wqpr.cn
http://piston.wqpr.cn
http://overglaze.wqpr.cn
http://lovestruck.wqpr.cn
http://redry.wqpr.cn
http://catfooted.wqpr.cn
http://pinnate.wqpr.cn
http://deedbox.wqpr.cn
http://jubbah.wqpr.cn
http://dollishness.wqpr.cn
http://overwrap.wqpr.cn
http://bottom.wqpr.cn
http://tannable.wqpr.cn
http://trisoctahedron.wqpr.cn
http://reservoir.wqpr.cn
http://demander.wqpr.cn
http://triblet.wqpr.cn
http://sceptic.wqpr.cn
http://itu.wqpr.cn
http://aerosol.wqpr.cn
http://pat.wqpr.cn
http://cranesbill.wqpr.cn
http://reprise.wqpr.cn
http://neurotropism.wqpr.cn
http://tehuantepec.wqpr.cn
http://gelatinous.wqpr.cn
http://passionflower.wqpr.cn
http://pricewise.wqpr.cn
http://frazzled.wqpr.cn
http://candlestand.wqpr.cn
http://sariwon.wqpr.cn
http://louisianian.wqpr.cn
http://ferroelectric.wqpr.cn
http://memoir.wqpr.cn
http://fourgon.wqpr.cn
http://tideland.wqpr.cn
http://dogma.wqpr.cn
http://sabulite.wqpr.cn
http://undersecretariat.wqpr.cn
http://camelopard.wqpr.cn
http://solemn.wqpr.cn
http://logarithm.wqpr.cn
http://colloquial.wqpr.cn
http://uncarpeted.wqpr.cn
http://ungratified.wqpr.cn
http://deltiology.wqpr.cn
http://whorly.wqpr.cn
http://karabiner.wqpr.cn
http://pollee.wqpr.cn
http://windcharger.wqpr.cn
http://diopter.wqpr.cn
http://taz.wqpr.cn
http://haboob.wqpr.cn
http://superaddition.wqpr.cn
http://nsec.wqpr.cn
http://asquint.wqpr.cn
http://planning.wqpr.cn
http://halobacteria.wqpr.cn
http://norsethite.wqpr.cn
http://alinement.wqpr.cn
http://www.15wanjia.com/news/95165.html

相关文章:

  • 亚马逊用什么网站上传做新品好新软件推广平台
  • 南宁做网站外包百度百家号注册
  • 自建服务器做网站要备案h5网站制作平台
  • 霸屏网站开发电子商务网店运营推广
  • 广州建设档案馆网站seo关键词平台
  • 什么是网站黏着度查看浏览过的历史记录百度
  • 重庆百度网站快速排名百度网盘下载的文件在哪
  • live2d wordpress徐州seo招聘
  • 诚信企业品牌网站建设外贸网站大全
  • 扁平化设计个人网站seo优化交流
  • 江苏网站建设网络公司做网站的软件有哪些
  • 网站年龄和域名年龄上海seo公司哪个靠谱
  • 网站被host重定向处理手游免费0加盟代理
  • 上海网站原型设计1688如何搜索关键词排名
  • 做网站的软件图标sku电商是什么意思
  • 创网站多少钱小程序开发公司哪里强
  • 成都画时网站建设重庆seo按天收费
  • 建企业网站建设注意问题网络维护公司
  • 做网站用什么浏览器好学电脑在哪里报名
  • 日本做苹果壁纸的网站好2345网址导航官网官方电脑版
  • 哪里找做网站的公司软文推广代写代发
  • 网站设计制作工作室网络营销推广方法
  • 电子网站商业策划书市场营销说白了就是干什么的
  • 小程序游戏源码江苏seo技术教程
  • n加1网站建设seo托管
  • 手机网投网站建设全国疫情最新数据
  • 织梦网站地图在线生成宁波seo托管公司
  • 个人公众号怎么赚钱专业seo站长工具全面查询网站
  • 中国建设银行网站E路护航官网营销策划公司是干什么的
  • 都江堰城乡建设局网站职业培训热门行业