摘要:想想,这一个碰运气的东西,能好使吗怎么实现这个效果说了那么多废话,先上地址吧,传送门我写的下面简单说说三种写法的思路选中的做成一个数组,多维护一个队列。选中的做成一个对象,多维护一个对象。
前情提要
好久没有写Vue了,略有生疏,这个东西还是得多用。
下午看到一个需求,选择相册图片作为轮播图显示。接口返回相册列表,用户选一下再扔回去。
直到我看到e.target.className我就知道这个事情不简单。。
数据驱动这个是我觉得和jQuery不一样的地方。
jQuery是点一下,加个class,移个class。
Vue是点一下,数据记录,然后自动通知视图。
一个是把选中状态保存在了DOM,一个是把选中状态保存在了js数据模型里。
所以在看到了使用Vue然后获取DOM改class的行为,我及时制止了他。话说你都自己搞了,要Vue干嘛。。。
数据驱动是一个数据到视图的过程,如果你只改视图不改数据。那么他在其他的地方刷新了数据,就有可能导致视图不同步。比如写的时候写了,那么读的时候读出来的有可能不一样,为什么会这样?因为有两个地方可以改呀,Vue把DOM删了,新渲染的没有你写的状态,读的时候读个鬼。想想,这一个碰运气的东西,能好使吗?
Vue怎么实现这个效果说了那么多废话,先上地址吧,传送门-我写的DEMO
下面简单说说三种写法的思路
选中的id做成一个数组,多维护一个队列。:class="{selected: ~checkSelect(item.id)}"渲染的时候去判断数组里面有那个id没有。
选中的id做成一个对象,多维护一个对象。:class="{selected: selectList[item.id]}"和前一个相比对象的话,id作为key查找起来方便了很多。这里要注意的是.$set,划重点要考的。
直接改原对象,多加一个参数。这个不怎么推荐。
在我写完代码,写文章的时候,需求就变了。难受。。。。去改代码。。。。
在我写完代码,写文章的时候,需求就变了。难受。。。。去改代码。。。。
在我写完代码,写文章的时候,需求就变了。难受。。。。去改代码。。。。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/52715.html
摘要:注意点在鼠标操作拖放期间,有一些事件可能触发多次,比如和。可拖拽元素,建议使用,设定可拖拽元素的鼠标游标,提升交互。在中使用拖拽中使用可以直接绑定到组件上。 什么是 Drag and Drop (拖放)? 简单来说,HTML5 提供了 Drag and Drop API,允许用户用鼠标选中一个可拖动元素,移动鼠标拖放到一个可放置到元素的过程。 我相信每个人都或多或少接触过拖放,比如浏览...
摘要:鼠标按下拖拽多选单元格这个是本唯一的亮点了个人认为。这样做的结果是页面非常卡,因为鼠标移动过程会多次触发鼠标移动事件,会多次进行单元格元素循环遍历。 网页版模仿Excel 最近公司闲的dan疼,非要模仿Excel做一个网页版的Excel,刚开始听说要做这么一个东西的时候瞬间觉得公司领导高(sang)瞻(xin)远(bing)瞩(kuang),只能头铁的接下了,那就开始干。其实主要目的是...
摘要:鼠标按下拖拽多选单元格这个是本唯一的亮点了个人认为。这样做的结果是页面非常卡,因为鼠标移动过程会多次触发鼠标移动事件,会多次进行单元格元素循环遍历。 网页版模仿Excel 最近公司闲的dan疼,非要模仿Excel做一个网页版的Excel,刚开始听说要做这么一个东西的时候瞬间觉得公司领导高(sang)瞻(xin)远(bing)瞩(kuang),只能头铁的接下了,那就开始干。其实主要目的是...
阅读 3538·2021-11-22 15:11
阅读 4592·2021-11-18 13:15
阅读 2683·2019-08-29 14:08
阅读 3530·2019-08-26 13:49
阅读 3063·2019-08-26 12:17
阅读 3265·2019-08-26 11:54
阅读 3097·2019-08-26 10:58
阅读 2006·2019-08-26 10:21