首先问题里的比较不成立。即便是 props:true 本质上也还是通过 params 传参。只不过 props:true 时路由参数将自动被赋值到目标组件的 props 里。比如你这个组件里有个 props 叫 myId、路由参数里有个 /:myId,那么自动就赋上值了。否则的话需要你手动的 const myId = this.$route.params.myId 取值一下。优势就是少写一行代码;劣势就是不够灵活 ———— 组件的 props 和路由参数不同名或者不想暴露成 props 怎么办?
首先问题里的比较不成立。即便是
props:true
本质上也还是通过 params 传参。只不过
props:true
时路由参数将自动被赋值到目标组件的 props 里。比如你这个组件里有个 props 叫
myId
、路由参数里有个/:myId
,那么自动就赋上值了。否则的话需要你手动的
const myId = this.$route.params.myId
取值一下。优势就是少写一行代码;劣势就是不够灵活 ———— 组件的 props 和路由参数不同名或者不想暴露成 props 怎么办?