uni-app:循环数据点击事件获取每行指定数据(获取参数)

效果

页面样式

点击首行控制台输出信息

代码

:data-id="item.id":定义id信息,在点击事件时e.currentTarget.dataset.id获取点击行的id

:data-index="index":定义index信息,在点击事件时e.currentTarget.dataset.index获取点击行的索引

:data-item="item":定义item信息,在点击事件时e.currentTarget.dataset.item获取点击行的整行信息

html 复制代码
<template>
	<view>
		<view class="item_all" v-for="(item, index) in allinfo" :key="index">
			<view class='position' :data-id="item.id" :data-index="index" :data-item="item" @tap="deatil">
				<view class="vv_1">id: {{item.id}}</view>
				<view class="vv_1">name: {{item.name}}</view>
				<view class="vv_1">age: {{item.age}}</view>
			</view>
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				allinfo: [{
						id: 1,
						name: '张三',
						age: '12'
					},
					{
						id: 2,
						name: '李四',
						age: '21'
					},
					{
						id: 3,
						name: '王五',
						age: '44'
					},
				]
			};
		},
		methods: {
			deatil(e) {
				console.log("id:"+e.currentTarget.dataset.id)//获取行id信息
				console.log("index:"+e.currentTarget.dataset.index)//获取索引index信息
				console.log(e.currentTarget.dataset.item)//获取整行信息
			}
		}
	};
</script>
<style>
	.item_all {
		margin-bottom: 3%;
	}

	.position {
		padding: 6% 0;
		width: 100%;
		background-color: #fff;
		box-shadow: 4rpx 4rpx 4rpx gainsboro;
	}

	.vv_1 {
		margin: 0 5%;
		word-break: break-all;
	}
</style>
相关推荐
Csvn2 小时前
Monorepo 迁移血泪史:从 Multi-Repo 到 Turborepo,这 3 个坑我帮你踩完了
前端
星栈2 小时前
Dioxus 多页面怎么做:`dioxus-router`、嵌套路由、`Outlet` 和页面组织,一篇给你讲顺
前端·rust·前端框架
用户987409238873 小时前
用 Remotion + edge-tts 打造中文教学视频全自动流水线
前端
风骏时光牛马3 小时前
Less前端工程化实战:变量混合器与项目样式分层落地
前端
假如让我当三天老蒯3 小时前
Options API(选项式 API) 和 Composition API(组合式 API)
前端·vue.js·面试
SameX3 小时前
iOS 独立开发实践:用 MapKit + 像素渲染实现 Citywalk 轨迹地图 App「雁过留痕」
前端
_柳青杨3 小时前
一文吃透 Node.js 事件循环:从原理到 Node 20+ 重大变更
javascript·后端
skyey3 小时前
页面加载时,深色模式闪白的问题解决
前端
IT_陈寒3 小时前
Java 并行流把我坑惨了,这6小时加班值了
前端·人工智能·后端
anOnion13 小时前
构建无障碍组件之Menu Button pattern
前端·html·交互设计