6.5【微信小程序全栈开发课程】记录页面(五)--隐藏显示文本框

简介: 1、添加data变量编辑RecordList.vue文件的data函数,添加三个变量:ellipsis、note、src其中ellipsis用来控制添加或者编辑文本框显示、note是添加或者编辑文本框中的文本(note默认为记录数据里面的备注)、src是编辑按钮图片链接

1、添加data变量


编辑RecordList.vue文件的data函数,添加三个变量:ellipsis、note、src


其中ellipsis用来控制添加或者编辑文本框显示、note是添加或者编辑文本框中的文本(note默认为记录数据里面的备注)、src是编辑按钮图片链接


data () {
  return {
    create_time:formatTime(new Date(this.record.create_time)),
    ellipsis: false,
    note:this.record.note,
    src:"/static/images/bianji.png"
  }
},


2、添加方法


在标签中创建methods函数,添加changeEllipsis、cancel方法


changeEllipsis方法用来修改变量ellipsis,从而控制文本框是否显示


cancel用来修改ellipsis,同时将note重置为修改前的状态


//参考数据,无需粘贴
//data () {
  //...
//},
//需要添加的部分,不要忘记在以上一行添加逗号隔开
methods:{
  // ellipsis为true时,显示文本框;为false隐藏文本框
  changeEllipsis () {
    this.ellipsis = !this.ellipsis
  },
  // 点击取消按钮时,要改变ellipsis,同时将note重置为修改前的状态
  cancel () {
    this.ellipsis = !this.ellipsis
    this.note = this.record.note
  },
}


3、添加页面代码


编辑RecordList.vue文件的template部分


<template>
  <div class="book-card">
    <div class="table" width="98%">
      <div class="tr">
        <!-- 时间 -->
        <div class="date">{{create_time}}</div>
        <!-- 分数 -->
        <div class="busi">
          <!-- 为了页面样式比较整齐,如果当前分数>0,在前面加一个+号; 当前分数=0在前面加一个空格-->
          <label v-if="record.add > 0">+{{record.add}}</label>
          <label v-else-if="record.add == 0">&nbsp;0</label>
          <label v-else>{{record.add}}</label>
        </div>
        <!-- 最后得分 -->
        <div class="mark">
          <!-- 如果当前分数大于0,在分数的前面加一个空格,为了页面样式比较整齐 -->
          <label v-if="record.mark >= 0">&nbsp;{{record.mark}}</label>
          <label v-else>{{record.mark}}</label>
        </div>
        <!-- 备注 -->
        <!-- changeEllipsis方法用来控制ellipsis变量为false或者为true -->
        <div class="net" @click='changeEllipsis'>
          <label v-if="note">{{note}}</label>
          <label v-else class="no-note">点击添加</label>
        </div>
        <!-- 编辑或者取消按钮 -->
        <!-- 当点击添加或者编辑按钮,显示文本框,按钮变成取消按钮 -->
        <!-- 点击取消按钮,触发cancel方法,隐藏文本框,按钮重新变成添加或者编辑按钮 -->
        <label v-if="ellipsis">
          <div class="image" @click='cancel'><image class='img' src='/static/images/quxiao.png'></image></div>
        </label>
        <label v-else>
          <!-- note指的记录备注,默认是record.note。如果重新编辑需要根据编辑的文本实时显示,所以将note做成了变量,src变量用到了三元函数。当文本框中有文字,显示编辑按钮;当文本框中没有文字,不显示按钮 -->
          <div class="image" @click='changeEllipsis'><image class='img' :src="note? src : ''"></image></div>
        </label>
      </div>
    </div>
    <!-- 点击添加或者编辑按钮显示的文本框 -->
    <div class="hide" v-if="ellipsis">
      <button class="btn">
        <!-- 当record记录有备注字段不为空,按钮显示为「修改」;当备注字段为空,按钮显示为「添加」 -->
        <label v-if="record.note">修改</label>
        <label v-else>添加</label>
      </button>
      <!-- input文本框绑定了note变量,在编辑文本框时,显示的备注文字,会根据文本框中编辑的文字变化 -->
      <input v-model='note'
            class="input"
            maxlength='10'
            placeholder="最多输入10个字">
    </div>
  </div>
</template>


4、测试效果


image.png

目录
相关文章
|
10月前
|
人工智能 小程序 前端开发
一个小程序轻量AR体感游戏,开发实现解决方案
针对青少年运动兴趣不足问题,AR体感游戏凭借沉浸式互动体验脱颖而出。结合小程序“AI运动识别”插件与WebGL渲染技术,可实现无需外设的轻量化AR健身游戏,如跳糕、切水果等,兼具趣味性与锻炼效果,适用于儿童健身及职工团建,即开即玩,低门槛高参与。
|
10月前
|
运维 小程序 数据可视化
小程序开发平台有哪些?SaaS小程序制作平台哪个好
小程序开发模式详解:自主开发、SaaS小程序制作平台与外包全对比 选择合适的小程序开发模式,是项目成功的基石。这三种模式在成本、周期、控制力和灵活性上各有千秋,适用于不同阶段和不同类型的企业。下面我们将逐一深入剖析。
916 8
|
10月前
|
移动开发 小程序 前端开发
小程序开发平台有哪些?哪个好
小程序的开发方式丰富多元,开发团队可根据自身的技术背景、项目具体需求以及资源状况,灵活挑选最为适宜的开发路径。以下将详细介绍几种主流的小程序开发方式。
821 1
|
10月前
|
移动开发 小程序 前端开发
小程序快速开发平台有哪些?
小程序开发并非“一刀切”,需结合技术储备、资金预算、时间规划及功能需求等多维度因素综合考量。以下为您详细拆解五种主流开发方案及其适用场景,助您精准匹配开发路径。
616 3
|
10月前
|
移动开发 小程序 前端开发
小程序开发平台有哪些?小程序开发制作软件推荐
小程序开发方案全解析:5种主流方式与选择指南 小程序开发需根据技术能力、预算、时间及功能需求综合决策。以下为5种主流开发方案及适用场景分析:
26576 0
|
小程序 前端开发 Android开发
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
2695 29
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
|
小程序 JavaScript API
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
这篇文章介绍了使用uni-halo框架进行微信小程序开发的过程,包括选择该框架的原因、开发目标以及项目配置和部署的步骤。
646 0
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
|
人工智能 开发框架 小程序
工会成立100周年纪念,开发职工健身AI运动小程序、APP方案推荐
为庆祝中华全国总工会成立100周年,特推出基于AI技术的智能健身系统,以小程序和APP形式呈现,助力职工健康生活。方案包括:1) 小程序插件,支持多种运动识别,开箱即用;2) APP插件,提供更高精度的运动检测;3) 成熟的「AI乐运动」系统,支持赛事活动管理。这些方案满足不同需求,推动全民健身体验升级,彰显工会对职工健康的关怀。