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 })