最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue如何進行動畫的封裝

 更新時間:2018年09月26日 08:34:02   作者:鸑鵠  
這篇文章主要介紹了vue如何進行動畫的封裝,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了vue動畫封裝的具體代碼,供大家參考,具體內(nèi)容如下

<style>
  .v-enter,.v-leave-to{
    opacity: 0;
  }
  .v-enter-active,.v-leave-active{
    transition:opacity 1s;
  }
</style>


<div id='app'>
  <transition>
    <div v-if='show'>hello world</div>
  </transition>
  <button @click='handleClick'>切換</button>
</div>

<script>
var vm = new Vue({
  el:'#app',
  data:{
    show:true
  },
  methods:{
    handleClick:function(){
      this.show = !this.show;
    }
  }
})
</script>

有時候這種漸隱漸現(xiàn)的效果用的比較多,要復用,需要封裝一下,怎么封裝呢

<style>
  .v-enter,.v-leave-to{
    opacity: 0;
  }
  .v-enter-active,.v-leave-active{
    transition:opacity 1s;
  }
</style>


<div id='app'>
  <fade :show='show'>
    <div>hello world</div>
  </fade>
  <fade :show='show'>
    <h1>hello world</h1>
  </fade>
  <button @click='handleClick'>切換</button>
</div>

<script>
Vue.component('fade',{
  props:['show'],
  template: `
    <transition>
      <slot v-if='show'></slot>
    </transition>
  `
})
var vm = new Vue({
  el:'#app',
  data:{
    show:false
  },
  methods:{
    handleClick:function(){
      this.show = !this.show;
    }
  }
})
</script>

可以這樣封裝,將dom元素傳入slot,除了這樣,還可以樣式一起封裝進去

<div id='app'>
  <fade :show='show'>
    <div>hello world</div>
  </fade>
  <fade :show='show'>
    <h1>hello world</h1>
  </fade>
  <button @click='handleClick'>切換</button>
</div>

<script>
Vue.component('fade',{
  props:['show'],
  template: `
    <transition @before-enter='handleBeforeEnter' @enter='handleEnter'>
      <slot v-if='show'></slot>
    </transition>
  `,
  methods:{
    handleBeforeEnter:function(el){
      el.style.color='red'
    },
    handleEnter:function(el,done){
      setTimeout(()=>{
        el.style.color='green';
        done();
      },2000)
    }
  }
})
var vm = new Vue({
  el:'#app',
  data:{
    show:false
  },
  methods:{
    handleClick:function(){
      this.show = !this.show;
    }
  }
})
</script>

把樣式一起封裝進來,是比較推薦的方式。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

县级市| 区。| 哈巴河县| 石景山区| 务川| 隆回县| 肃宁县| 郁南县| 门头沟区| 高密市| 阳高县| 屏东县| 横峰县| 筠连县| 延川县| 庆元县| 淳化县| 九寨沟县| 澎湖县| 买车| 那曲县| 阿合奇县| 五华县| 兰西县| 山西省| 芮城县| 巩留县| 桑植县| 分宜县| 巴林左旗| 祁阳县| 闽清县| 苍溪县| 依安县| 南江县| 溆浦县| 东乡| 孝义市| 新建县| 库伦旗| 建瓯市|