前端代码心得基础篇(一)

1.Active.vue

<template>
  <view class="Active-box_wrapper">
    <view class="item" v-for="(v, idx) in data" :key="idx" @click="subActive(v, true)">
      <image :src="localImg.activity.war" class="img-arr" v-if="v.status == '未开始'"></image>
      <image :src="localImg.activity.ing" class="img-arr" v-if="v.status == '进行中'"></image>
      <image :src="localImg.activity.end" class="img-arr" v-if="v.status == '已结束'"></image>
      <view class="left">
        <image :src="v.imageUrl" class="img"></image>
      </view>
      <view class="right">
        <view class="title">{{v.title}}</view>
        <view class="sub"><u-icon name="map"></u-icon>{{v.address}}</view>
        <view class="time"><u-icon name="clock"></u-icon>{{dateFormat(new Date(v.beginTime))}}</view>
        <button type="primary" size="mini" class="btn" @click.stop="subActive(v, false)">报名</button>
        <button type="primary" size="mini" class="btn end" v-if="v.status == '已结束'"  @click.stop>报名</button>
      </view>
    </view>
  </view>
</template>

代码讲解:

  1. @click=“subActive(v, true)”
    点击跳到活动详情页

  2. @click.stop=“subActive(v, false)”
    点击跳到活动报名页,运用.stop的目的是阻止冒泡事件的发生

  3. v-if=“v.status == ‘未开始’”
    表示三种不同的状态

  <view class="time"><u-icon name="clock"></u-icon>{{dateFormat(new Date(v.beginTime))}}</view>

此处后台传的时间字段是Date类型,前台拿到的是String类型,因此前端可以用dateFormat日期格式化函数,可以穿时间戳或者new date()。

 <button type="primary" size="mini" class="btn" @click.stop="subActive(v, false)">报名</button>
 <button type="primary" size="mini" class="btn end" v-if="v.status == '已结束'" @click.stop>报名</button>

在这里插入图片描述
这段的逻辑就是:写了两个button,刚开始以为会出来两个,但是要注意它加了v-if这个条件,条件满足了才回显示出来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序媛夏天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值