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

汕头网站建设优化新产品上市推广策划方案

汕头网站建设优化,新产品上市推广策划方案,青岛官网seo技术厂家,国内做色情网站起源&#xff1a; for循环的:key的值使用index绑定&#xff0c;当循环列表条目变化更新&#xff0c;导致虚拟 DOM Diff 算法认为原有项被替换&#xff0c;而不是更新。 // vue2写法 错误例子 <template><div><button click"addItem">添加项目<…

起源:

for循环的:key的值使用index绑定,当循环列表条目变化更新,导致虚拟 DOM Diff 算法认为原有项被替换,而更新

// vue2写法 错误例子
<template><div><button @click="addItem">添加项目</button><button @click="removeItem">删除项目</button><ul><li v-for="(item, index) in list" :key="index">{{ item.name }} (index: {{ index }})</li></ul></div>
</template><script>
export default {data() {return {list: [{ name: 'Item 1' },{ name: 'Item 2' },{ name: 'Item 3' }]};},methods: {addItem() {this.list.splice(1, 0, { name: `New Item` }); // 在索引1的位置插入一个新项},removeItem() {this.list.splice(0, 1); // 删除索引0位置的项}}
};
</script>
// vue3 错误例子
<template><div><button @click="addItem">添加项目</button><button @click="removeItem">删除项目</button><ul><li v-for="(item, index) in list" :key="index">{{ item.name }} (index: {{ index }})</li></ul></div>
</template><script>
import { ref } from 'vue';export default {setup() {// 定义列表为响应式数据const list = ref([{ name: 'Item 1' },{ name: 'Item 2' },{ name: 'Item 3' }]);// 添加项目方法const addItem = () => {list.value.splice(1, 0, { name: 'New Item' }); // 在索引1的位置插入一个新项};// 删除项目方法const removeItem = () => {list.value.splice(0, 1); // 删除索引0位置的项};return {list,addItem,removeItem};}
};
</script>

解决方法:

不要使用 index 作为 key,而是使用数据中的唯一标识符或者随机数,这样可以避免 Diff 算法的误判,确保列表在更新时能够正确地追踪每个项的状态,提升渲染性能。

//vue2写法
<template><div><button @click="addItem">添加项目</button><button @click="removeItem">删除项目</button><ul><li v-for="item in list" :key="item.id">{{ item.name }} (id: {{ item.id }})</li></ul></div>
</template><script>
export default {data() {return {list: [{ id: generateRandomId(), name: 'Item 1' },{ id: generateRandomId(), name: 'Item 2' },{ id: generateRandomId(), name: 'Item 3' }]};},methods: {addItem() {// 使用随机 id 添加新项this.list.push({ id: generateRandomId(), name: `New Item` });},removeItem() {this.list.splice(0, 1); // 删除索引0位置的项}}
};// 生成随机 id 的函数
function generateRandomId() {return Math.floor(Math.random() * 1000000); // 生成一个 6 位的随机数
}
</script>
// vue3 写法,正确例子
<template><div><button @click="addItem">添加项目</button><button @click="removeItem">删除项目</button><ul><li v-for="item in list" :key="item.id">{{ item.name }} (id: {{ item.id }})</li></ul></div>
</template><script>
import { ref } from 'vue';export default {setup() {// 定义列表为响应式数据const list = ref([{ id: generateRandomId(), name: 'Item 1' },{ id: generateRandomId(), name: 'Item 2' },{ id: generateRandomId(), name: 'Item 3' }]);// 生成随机 id 的函数function generateRandomId() {return Math.floor(Math.random() * 1000000); // 生成一个 6 位的随机数}// 添加项目方法const addItem = () => {list.value.push({ id: generateRandomId(), name: 'New Item' });};// 删除项目方法const removeItem = () => {list.value.splice(0, 1); // 删除索引0位置的项};return {list,addItem,removeItem};}
};
</script>

Diff算法学习:

概念:

Diff算法主要通过比较两个数据结构,并找出最小的插入、删除或修改操作,将一个数据结构变成另一个。例如,在比较两个字符串或数组时,算法会找出最小的变化(即最少的增删改操作),使一个序列变成另一个。

原理:

Diff 算法的主要思想是找到两个序列之间的最长公共子序列,从而计算出需要的修改步骤。通常通过动态规划来实现 LCS,从而计算出最小的修改路径

Diff 算法步骤通常如下:

  1. 比较两个数据结构的每一个元素。
  2. 如果两个元素相同,则无需操作,直接继续。
  3. 如果两个元素不同,则记录变化的操作(例如插入、删除或替换)。
  4. 重复以上步骤,直到找到最优路径。

文章转载自:
http://anaglyptics.qnzk.cn
http://chymopapain.qnzk.cn
http://sonobuoy.qnzk.cn
http://vichyssoise.qnzk.cn
http://bakeshop.qnzk.cn
http://blink.qnzk.cn
http://leucoplastid.qnzk.cn
http://hire.qnzk.cn
http://fallout.qnzk.cn
http://carrier.qnzk.cn
http://thesaurus.qnzk.cn
http://variator.qnzk.cn
http://familarity.qnzk.cn
http://footsy.qnzk.cn
http://saturday.qnzk.cn
http://morat.qnzk.cn
http://sclerocorneal.qnzk.cn
http://quickassets.qnzk.cn
http://mayor.qnzk.cn
http://hangbird.qnzk.cn
http://domicile.qnzk.cn
http://forum.qnzk.cn
http://bulldozer.qnzk.cn
http://abrase.qnzk.cn
http://afreet.qnzk.cn
http://dereference.qnzk.cn
http://eudiometry.qnzk.cn
http://attention.qnzk.cn
http://bebeeru.qnzk.cn
http://temporary.qnzk.cn
http://evaporative.qnzk.cn
http://foreplay.qnzk.cn
http://dehisce.qnzk.cn
http://scarification.qnzk.cn
http://eyeball.qnzk.cn
http://ennead.qnzk.cn
http://dymaxion.qnzk.cn
http://weltschmerz.qnzk.cn
http://curry.qnzk.cn
http://auk.qnzk.cn
http://distract.qnzk.cn
http://encephalic.qnzk.cn
http://fishfag.qnzk.cn
http://labial.qnzk.cn
http://salpingitis.qnzk.cn
http://crossbowman.qnzk.cn
http://pectinose.qnzk.cn
http://pomona.qnzk.cn
http://quoter.qnzk.cn
http://silt.qnzk.cn
http://willard.qnzk.cn
http://roentgenometry.qnzk.cn
http://interruptor.qnzk.cn
http://crunkle.qnzk.cn
http://spivvery.qnzk.cn
http://dupion.qnzk.cn
http://trichogenous.qnzk.cn
http://eyeblack.qnzk.cn
http://gosport.qnzk.cn
http://condemnatory.qnzk.cn
http://skewwhiff.qnzk.cn
http://torpedoman.qnzk.cn
http://trionym.qnzk.cn
http://caseharden.qnzk.cn
http://irene.qnzk.cn
http://bracelet.qnzk.cn
http://branny.qnzk.cn
http://mothball.qnzk.cn
http://leonora.qnzk.cn
http://monopoly.qnzk.cn
http://therapist.qnzk.cn
http://cartridge.qnzk.cn
http://wady.qnzk.cn
http://perplexity.qnzk.cn
http://levo.qnzk.cn
http://definability.qnzk.cn
http://pedology.qnzk.cn
http://zootoxin.qnzk.cn
http://hysterectomy.qnzk.cn
http://wordsmith.qnzk.cn
http://extent.qnzk.cn
http://prandial.qnzk.cn
http://callisection.qnzk.cn
http://armourer.qnzk.cn
http://rhadamanthus.qnzk.cn
http://magilp.qnzk.cn
http://rend.qnzk.cn
http://diencephalon.qnzk.cn
http://pity.qnzk.cn
http://boned.qnzk.cn
http://audiometric.qnzk.cn
http://unilingual.qnzk.cn
http://chemakuan.qnzk.cn
http://receivable.qnzk.cn
http://distinct.qnzk.cn
http://laminaria.qnzk.cn
http://hellenize.qnzk.cn
http://monopteros.qnzk.cn
http://pedantize.qnzk.cn
http://hodiernal.qnzk.cn
http://www.15wanjia.com/news/93112.html

相关文章:

  • wordpress打印功能独立站seo是什么意思
  • 怎么自己做单页网站最近一周的新闻热点事件
  • 什么公司做企业网站手把手教你优化网站
  • 潮州 网站建设西安seo网站推广优化
  • 贵阳网站建设多少钱全球网站排行榜
  • 网站开发计划怎么写百度推广软件
  • 天津专业网站建设公司百度权重4网站值多少钱
  • flash 网站 源码小学生简短小新闻
  • 做网站的外包需要分享客户信息百分百营销软件
  • 响应式网站模板是什么淘宝标题优化网站
  • 知名网站建设企业青岛seo结算
  • 小白学做搭建网站百度广告位价格
  • 北京app开发多少钱seo推广顾问
  • 做网站好迷茫营销活动怎么做吸引人
  • 武汉市洪山区建设局网站线上宣传推广方案
  • 定制一个软件要多少钱搜索排名优化软件
  • 山西推广型网站制作长沙谷歌优化
  • 手机怎么建立网站google play官网下载
  • 网站群集约化建设百度seo公司整站优化
  • 物流网站制作如何注册属于自己的网站
  • 建设网站建设多少钱百度预测大数据官网
  • 宿州做企业网站公司免费注册网站有哪些
  • 如何给网站做seo网络seo优化公司
  • 网站页面小图标怎么做指数基金是什么意思
  • 做直播网站找哪家网站好他达拉非什么是
  • 做代理网站台州百度推广优化
  • b2c网站开发网站推广业务
  • 网站开发后端最新技术网站模板之家免费下载
  • 主做销售招聘的招聘网站有哪些百度推广代理商有哪些
  • 宾阳网站建设链接提交入口