网上有很多使用 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冒泡排序”下载源码!
: » Vue.js 仿冒泡排序排序过程动画效果
原创文章,作者:sunnyman218,如若转载,请注明出处:https://blog.ytso.com/251381.html