vue

A collection of 6 posts

vue

Vue Class Component

一、vuex定义 import Vue from 'vue' import Component from 'vue-class-component' import { mapGetters, mapActions } from 'vuex' // post接口 import { Post } from './post' @Component({ computed: mapGetters([ 'posts' ]), methods: mapActions([ 'fetchPosts' ]) }) export default class Posts extends Vue { // 在类属性声明映射的getter和action // 你可能需要添加 `!` 在类属性后面 // 为了避免编译错误(需要明确的赋值断言). // 映射getter posts!: Post[] // 映射action fetchPosts!

  • lhh
vue

Vue Class Component使用二

一、vue router hooks路由钩子 import Component from 'vue-class-component' // 注册路由钩子,必须在任何组件定义之前注册它们 Component.registerHooks([ 'beforeRouteEnter', 'beforeRouteLeaver', 'beforeRouteUpdate' ]) 二、类组件将它们实现为类原型方法 import Vue from 'vue' import Component from 'vue-class-component' @Component export default class HelloWorld extends Vue{ beforeRouteEnter(to, from, next){ console.log('beforeRouteEnter') next() } beforeRouteLeaver(to, from, next)

  • lhh
vue

vue-router导航解析流程

一、假设条件:A页面进入B页面 1. 导航被触发2. 离开A页面组件里的beforeRouteLeave守卫3. 调用全局的beforeEach守卫4. 如果存在复用组件,则调用beforeRouteUpdate守卫5. 调用路由配置的beforeEnter守卫6. 解析异步路由组件7. 被激活的B页面组件里的beforeRouteEnter守卫8. 调用全局的beforeResolve守卫9. 导航被确认10. 调用全局的afterEach钩子11. DOM更新12. 调用beforeRouteEnter守卫中传给next的回调函数 import Vue form 'vue'; import VueRouter from 'vue-router'; Vue.use(VueRouter); const Index = ()=> import('./index.vue'); const routes = [ { path: "/", name: "Index", component: Index, // 路由配置守卫 beforeEnter:

  • lhh