Vue,组件切换-切换动画
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta http-equiv="X-UA-Compatible" content="ie=edge"> 7 <title>Document</title> 8 <script src="../js/vue.js"></script> 9 </head> 10 <style> 11 .v-enter, 12 .v-leave-to{ 13 opacity: 0; 14 transform: translateX(150px); 15 } 16 17 .v-enter-active, 18 .v-leave-active{ 19 transition: all 0.5s ease; 20 } 21 </style> 22 <body> 23 <div id="app"> 24 25 <a href="" @click.prevent="comName='login'">登录</a> 26 <a href="" @click.prevent="comName='register'">注册</a> 27 28 <!-- 通过 mode 属性, 设置组件切换时候的 模式 --> 29 <transition mode="out-in"> 30 <component :is="comName"></component> 31 </transition> 32 33 34 </div> 35 36 37 38 </body> 39 </html> 40 <script> 41 42 //组件名称是 字符串 43 Vue.component('login', { 44 template: '<h3>登录组件</h3>' 45 }) 46 47 Vue.component('register', { 48 template: '<h3>注册组件</h3>' 49 }) 50 51 var vm = new Vue({ 52 el: '#app', 53 data:{ 54 comName: '' // 当前 component 中的 :is 绑定的组件的名称 55 }, 56 methods: { 57 58 }, 59 }) 60 61 </script>
效果图

