vue3.0 页面动画以及页面缓存

template

 <router-view class="router-view" v-slot="{ Component }">
        <transition name="slide-left">
          <keep-alive :include="state.hello">
          <component :is="Component" />
          </keep-alive>
        </transition>
      </router-view>

css

// .router-view{
//     width: 100%;
//     height: auto;
//     position: absolute;
//     top: 0;
//     bottom: 0;
//     margin: 0 auto;
//     -webkit-overflow-scrolling: touch;
// }

.slide-right-enter-active,
.slide-right-leave-active,
.slide-left-enter-active,
.slide-left-leave-active {
  // height: 100%;
  will-change: transform;
  transition: all 500ms cubic-bezier(0.55, 0, 0.1, 1);
  position: absolute;
  backface-visibility: hidden;
}
.slide-right-enter-active {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}
.slide-right-leave-active {
  opacity: 0;
  transform: translate3d(100%, 0, 0);
}
.slide-left-enter-active {
  opacity: 0;
  transform: translate3d(100%, 0, 0);
}
.slide-left-leave-active {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}```

在Vue 3.0中,页面跳转可以通过使用Vue Router来实现。Vue Router是Vue.js官方的路由管理器,它可以帮助我们实现单页应用的页面跳转和导航。 首先,你需要安装Vue Router。可以通过npm或者yarn来安装: ``` npm install vue-router ``` 或者 ``` yarn add vue-router ``` 安装完成后,在你的Vue项目中,创建一个router.js文件,并在其中配置路由信息。例如: ```javascript import { createRouter, createWebHistory } from 'vue-router'; import Home from './views/Home.vue'; import About from './views/About.vue'; const routes = [ { path: '/', name: 'Home', component: Home }, { path: '/about', name: 'About', component: About } ]; const router = createRouter({ history: createWebHistory(), routes }); export default router; ``` 在上面的代码中,我们定义了两个路由:'/'对应Home组件,'/about'对应About组件。 然后,在你的main.js文件中,将router.js引入,并将其挂载到Vue实例上: ```javascript import { createApp } from 'vue'; import App from './App.vue'; import router from './router'; createApp(App).use(router).mount('#app'); ``` 现在,你可以在你的组件中使用`<router-link>`标签来实现页面跳转。例如,在App.vue组件中: ```html <template> <div> <router-link to="/">Home</router-link> <router-link to="/about">About</router-link> <router-view></router-view> </div> </template> ``` `<router-link>`标签会渲染成一个a标签,点击它会触发路由跳转。 另外,你也可以使用编程式导航来实现页面跳转。例如,在某个按钮的点击事件中,你可以使用`$router.push()`方法来进行跳转: ```javascript methods: { goToAbout() { this.$router.push('/about'); } } ``` 这样就可以实现页面跳转了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值