前端实现 如何再方法里面写跳转地址让把当前行的row作为参数传过去vue框架实现
在Vue框架中,可以使用路由传参来实现将当前行的row作为参数传递给跳转的页面。
假设当前页面有一个表格,每一行都有一个按钮,点击按钮可以跳转到详情页面,并将当前行的row作为参数传递过去,可以按照以下步骤实现:
- 配置路由
在路由配置文件中,需要为详情页面配置一个动态路由,用来接收参数。例如:
{
path: '/detail/:id',
component: DetailPage
}
- 在组件中处理跳转事件
在表格组件中,为每一行的按钮绑定一个点击事件,在事件处理函数中使用路由跳转,并将当前行的row作为参数传递给详情页面。例如:
<template>
<table>
<tbody>
<tr v-for="item in list">
<td>{{ item.name }}</td>
<td>{{ item.age }}</td>
<td><button @click="goToDetail(item)">详情</button></td>
</tr>
</tbody>
</table>
</template>
<script>
export default {
data() {
return {
list: [
{ id: 1, name: '张三', age: 18 },
{ id: 2, name: '李四', age: 20 },
{ id: 3, name: '王五', age: 22 }
]
}
},
methods: {
goToDetail(item) {
this.$router.push(`/detail/${item.id}`, { row: item })
}
}
}
</script>
在上述代码中,使用$router.push方法跳转到详情页面,并将当前行的row作为参数传递。参数传递的方式是将参数对象作为第二个参数传递给push方法。
- 在详情页面中获取参数
在详情页面中,可以使用$route.params来获取参数。例如:
<template>
<div>
<h2>{{ row.name }} 的详情</h2>
<p>年龄:{{ row.age }}</p>
</div>
</template>
<script>
export default {
data() {
return {
row: {}
}
},
created() {
this.row = this.$route.params.row
}
}
</script>
在上述代码中,通过$route.params获取传递过来的参数,并将参数赋值给组件的row属性,用来显示详情页面的内容。
原文地址: https://www.cveoy.top/t/topic/3UC 著作权归作者所有。请勿转载和采集!