enter ==>enter-active
leave ==> leave-active
使用vue組件 transition 屬性:name
.fade-enter{opacity:0;} .fade-enter-active{transition:all 1s;} .fade-leave-active{opacity:0;transition:all 1s;}
<transition name="fade"> <!-- 須要過渡的元素 --> </transition>
style
.fade-enter-active{animation:fade-in .5s} @keyframes fade-in{ from{}to{} }
htmlhtml
<transition name="fade"></transition>
<transition name='fade' appear appear-class appear-class-active></transition>
使用:v-for生成列表過渡效果要用使用組件 transition-group,組件提供屬性 tag表示該組件將會渲染成對對應的DOM節點,其餘的使用和transition同樣
基於webpack 構建工具下的一個vue的腳手架
$ npm install vue-cli -g
$ vue init webpack-simple 項目名稱(simple-爲簡單腳手架,webpack-爲完整腳手架)
$ cd 項目名稱
$ npm install
$ npm run dev
$ npm install --global vue-cli
$ vue init webpack 項目名
$ npm install
$ npm run dev
npm install vue-router
// 組件模板 <template> <div> <h1>這是組件</h1> </div> </tempalte> // 暴露組件 <script> export default{} </script>
在主入口程序app.js裏面定義規則
// 導入模塊 import Vue from 'vue' import VueRouter from 'vue-router' // 全局使用 Vue.use(VueRouter); // 導入首頁組件 import app form './app.vue' // 導入功能組件 import 組件名 from './' // 路由命名規則 const router = new VueRouter({ // 配置路由 routes:[ { path:'/路由',component:組件名, // 路由嵌套 children:[ {path:'子路由',component:組件名} ] } ] }) // 獲取vue實例 new Vue({ el:'#app', router, render:h =>h(app); });
定義:在路由規則處定義參數屬性
const router = new VueRouter({ routes:[ {path:'/user/:id/:pwd',component:組件名} ] })
傳參:在對應的路由下傳參
<router-link to="/user/admin/1234"></router-link>
獲取:在對應的路由文件(組件)下經過 $route.params.屬性名 來獲取參數
let user = {id:{{$.route.params.id},pwd:{{$.route.params.pwd}}
$router.push({name:'user',params:{id:fhj,pwd:1234}})
使用JavaScript 跳轉路由
$router.push({path:'/user'})
在路由映射規則中添加屬性:name,用於對該路由映射規則命名,在編程式導航跳轉路由時能夠用router.push({name:'名稱'})
給<router-view name='視圖名'></router-view>
分別添加不一樣的id,用於顯示不一樣的組件
<template> <div> <router-view name="default"></router-view> <router-view name="a"></router-view> </div> </template>
cosnt router = new VueRouter({ routes:[ {path:'/',components:{ default:.., a:.. }, {} ] }) new Vue({ el:'#app', <!-- 初始化路由對象 --> router })