温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

vue如何实现选中效果

发布时间:2020-10-29 22:58:33 来源:亿速云 阅读:282 作者:Leah 栏目:开发技术

这篇文章将为大家详细讲解有关vue如何实现选中效果,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

Vue是数据驱动

数据驱动这个是我觉得和jQuery不一样的地方。

jQuery是点一下,加个class,移个class。

Vue是点一下,数据记录,然后自动通知视图。

一个是把选中状态保存在了DOM,一个是把选中状态保存在了js数据模型里。

所以在看到了使用Vue然后获取DOM改class的行为,我及时制止了他。话说你都自己搞了,要Vue干嘛。。。

数据驱动和之前的思想 在一起会怎么样?

数据驱动是一个数据到视图的过程,如果你只改视图不改数据。那么他在其他的地方刷新了数据,就有可能导致视图不同步。比如写的时候写了,那么读的时候读出来的有可能不一样,为什么会这样?因为有两个地方可以改呀,Vue把DOM删了,新渲染的没有你写的状态,读的时候读个鬼。想想,这一个碰运气的东西,能好使吗?

Vue怎么实现这个效果

下面简单说说三种写法的思路

  1. 选中的id做成一个数组,多维护一个队列。:class="{selected: ~checkSelect(item.id)}"渲染的时候去判断数组里面有那个id没有。
  2. 选中的id做成一个对象,多维护一个对象。:class="{selected: selectList[item.id]}"和前一个相比对象的话,id作为key查找起来方便了很多。这里要注意的是.$set,划重点要考的。
  3. 直接改原对象,多加一个参数。这个不怎么推荐。

关于vue如何实现选中效果就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI