一,通过点击事件本身的js特性传参。

<view class="center_menu">
				<view class="menu_item" v-for="item in menus" @click="toAddress(item.address)">
					<image :src="item.icon" mode="aspectFill" ></image>
					<text>{{item.name}}</text>
				</view>
			</view>

将所需要的参数直接@click=“toAddress(item.address)”,放在函数的括号内传递。接受的时候如下:

methods: {
			toAddress (e){
				console.log(e);
			}
		},

二,通过自定义属性传参,我经常用这种。

<view class="order_status">
					<view class="status" v-for="item in status" @click="toAddress" data-id="1">
						<image class="icon" :src="item.url" mode="aspectFill"></image>
						<text>{{item.name}}</text>
					</view>
				</view>

通过自定义属性data-id将字符串“1”传递过去。(这种方法小程序上经常使用)接受的时候如下:

methods: {
			toAddress (e){
				console.log(e.currentTarget.dataset.id);
			}
		},

三,将事件本身传递过去。

<view class="order_status">
					<view class="status" v-for="item in status" @click="toAddress($event)" data-id="1">
						<image class="icon" :src="item.url" mode="aspectFill"></image>
						<text>{{item.name}}</text>
					</view>
				</view>
methods: {
			toAddress (e){
				console.log(e);
			}
		},
Logo

前往低代码交流专区

更多推荐