发表日期:2019-09 文章编辑:小灯 浏览次数:4679
网上有很多使用 JavaScript 来模拟冒泡排序排序过程的动画。今天我们再借助目前最火的 Vue.js 来实现一个冒泡排序动画效果。
vue.js 是一款轻量级的渐进式 JavaScript 框架,在实现动画效果方面非常方便。
本文实现的最终动画效果如下:
实现代码非常的简单,总共不超过100行。主要代码如下:
<div id="app"><div class="cards"><sort-card v-for="(card, index) in store.state.cards" :key="index" :value="card.value" :sort-index="card.sortIndex" :is-active="card.isActive" :is-locked="card.isLocked"></sort-card></div><div class="control-panel"><h1>Bubble Sort Visualizer</h1><button aria-label="Reset" v-if="store.state.done" @click="reset(SORT_ARRAY)"><i class="fa fa-refresh" aria-hidden="true"></i></button></div></div><!-- 塔灯网络 www.xttblog.com --><script type="text/x-template" id="sort-card-template"><!-- 绑定内联样式,通过 height 和 transform 来显示不同的div --><div class="card-wrapper" :data-sort-index="sortIndex" v-bind:style="{height: value * HEIGHT_INCREMENT + 'px',transform: 'translateX('+sortIndex*100+'%)'}"><!-- 通过改变class,来改变颜色 --><div class="card" :class="cardClassObject"><div class="value">{{value}}</div></div></div></script>
如果感兴趣,还是老规矩,关注我的微信公众号,回复“vue冒泡排序”下载源码!