美文网首页
vue路由参数解耦

vue路由参数解耦

作者: 泪滴在琴上 | 来源:发表于2021-01-07 17:10 被阅读0次

一般在组件内使用路由参数,大多数人会这样做:

export default {
    methods: {
        getParamsId() {
            return this.$route.params.id
        }
    }
}

在组件中使用 $route 会使之与其对应路由形成高度耦合,从而使组件只能在某些特定的 URL 上使用,限制了其灵活性。

正确的做法是通过 props 解耦

const router = new VueRouter({
    routes: [{
        path: '/user/:id',
        component: User,
        props: true
    }]
})

将路由的 props 属性设置为 true 后,组件内可通过 props 接收到 params 参数

export default {
    props: ['id'],
    methods: {
        getParamsId() {
            return this.id
        }
    }
}

另外你还可以通过函数模式来返回 props

const router = new VueRouter({
    routes: [{
        path: '/user/:id',
        component: User,
        props: (route) => ({
            id: route.query.id
        })
    }]
})

相关文章

  • vue路由参数解耦

    一般在组件内使用路由参数,大多数人会这样做: 在组件中使用 $route 会使之与其对应路由形成高度耦合,从而使组...

  • 10个Vue开发技巧

    参考文章:10个Vue开发技巧 一、路由参数解耦 知道这个写法,但是没有使用过,可参考笔记vue-router五。...

  • 开发技巧

    路由参数解耦 一般在组件内使用路由参数,大多数人会这样做: export default { methods:...

  • 用好vue-router,让项目架构更合理

    1,路由护卫 2,使用 props 将组件和路由解耦 如上面代码,参数:id,将自动注入为component:pr...

  • Vue工程师,这些开发技巧你都会吗?

    路由参数解耦 一般在组件内使用路由参数,大多数人会这样做: 在组件中使用 $route 会使之与其对应路由形成高度...

  • vue开发的一些技巧

    路由参数解耦 一般在组件内使用路由参数,大多数人会这样做: 在组件中使用 $route 会使之与其对应路由形成高度...

  • Vue2 开发技巧(收集)

    1.路由参数解耦通常在组件中使用路由参数,大多数人会做以下事情。 在组件中使用 $route 会导致与其相应路由的...

  • Vue的一些开发技巧

    父子组件的生命周期 父组件Home,子组件List 挂载 销毁 路由参数解耦 this.$route.params...

  • 路由解耦

    解藕一种方式。用一种最简单的方案来实现。 一、有一个FFURI基类,最基础三个变量和一个初始方法scheme:有时...

  • vue常用的路由间传参

    使用$route 使用 props将组件与路由解耦 方式一:使用$route 此方法传递参数不在URL路径拼接显示...

网友评论

      本文标题:vue路由参数解耦

      本文链接:https://www.haomeiwen.com/subject/wenzoktx.html