方法一 :基本的方法
单纯的只跳一个路径
this.$router.push({path: '../schoolroll/schoolroll'})
路径上传参,这种比较少。this.province ,可以把它看成是一个对象的方式传递过去
this.$router.push({path: '../schoolroll/schoolroll?province=' + this.province})
对上面传递过来的取参,声明一个变量接收
var province = this.$route.query.province
方法二 : path搭配query传参(用的较多)
this.$router.push({
path: '../schoolroll/schoolroll',
query: {
'province': this.province,
'city': this.city
}
})
①取参,声明变量接收
var province = this.$route.query.province
var city = this.$route.query.city
②另一种取参,可以直接拼接到另一个页面的请求需求之中(不熟练的可以采用上面那种
async getList(){
let res = await this.request(
`/expert/detail/${this.$route.query.province}`,
"get"
)
console.log('详情',res);
this.list = res.data
}
方法三:name搭配params传参
this.$router.push({
name: '人才录入表管理',//name指的是路由配置文件中的name
params: {
'province': this.province,
'city': this.city
}
})
同样的声明变量,取参
var province = this.$route.params.province
var city = this.$route.params.city
注意: name和params搭配,path和query搭配,采用params的方式传递参数,当你刷新页面时,参数就会丢失;采用query参数刷新还在。