6.6【微信小程序全栈开发课程】记录页面(六)--修改备注

简介: 1、引入工具函数编辑RecordList.vue文件,引入util.js文件中的post、showModal这两个工具函数

1、引入工具函数


编辑RecordList.vue文件,引入util.js文件中的post、showModal这两个工具函数


//参考代码,无需粘贴
//<script>
//需要添加的部分
import {post,showModal} from '@/util'


2、添加撤销方法


编辑RecordList.vue文件的script部分,在methods函数添加修改备注的方法addNote


async addNote () {
  const data = {
    id: this.record.id,
    note:this.note
  }
  try{
    const res = await post('/weapp/updatenote', data)
    console.log("从后端返回的执行正确的信息是:",res)
    //点击添加或者修改按钮,隐藏掉文本框
    this.ellipsis = false
    // 将从父组件传过来的record中的note值更新为修改后的值
    this.record.note = this.note
  }catch(e){
    showModal('失败', "请重新提交哦~")
    console.log("从后端返回的执行错误的信息是:",e)
  }
}


3、在后端添加路由


1)创建操作文件updatenote.js


先在后端server/controllers文件夹中创建操作文件updatenote.js


在操作文件中实现:查找出需要修改的record数据,并修改这条数据的note字段


(2)添加路由


在路由管理文件server/routes/index.js文件中添加路由


//需要添加的代码
router.post('/updatenote', controllers.updatenote)
//参考代码,无需粘贴
//module.exports = router


4、编辑后端操作文件


编辑server/controllers/updatenote.js文件


查找出需要修改的record数据,并修改这条数据的note字段


const {mysql} = require('../qcloud')
module.exports = async (ctx) => {
  const {id,note} = ctx.request.body
  try{
    const res = await mysql('records')
        .where("id",id)
        .update("note",note)
    // 执行成功返回的数据
    ctx.state.data = {
      code: 0,
      msg: 'success'
    }
  }catch(e){
    // 执行失败返回的数据
    ctx.state = {
      code: -1,
      data: {
        msg: '撤销失败' + e.sqlMessage
      }
    }
  }
}


5、添加点击事件


在RecordList.vue文件中的「修改」或者「添加」按钮上面添加点击事件,点击触发addNote方法


<!--原代码-->
<button class="btn">
  <label v-if="record.note">修改</label>
  <label v-else>添加</label>
</button>
<!--修改后的代码-->
<button class="btn" @click='addNote'>
  <label v-if="record.note">修改</label>
  <label v-else>添加</label>
</button>


6、测试


image.png

目录
相关文章
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
4705 7
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
5220 1
|
人工智能 自然语言处理 小程序
技术小白如何利用DeepSeek半小时开发微信小程序?
通过通义灵码的“AI程序员”功能,即使没有编程基础也能轻松创建小程序或网页。借助DeepSeek V3和R1满血版模型,用户只需用自然语言描述需求,就能自动生成代码并优化程序。例如,一个文科生仅通过描述需求就成功开发了一款记录日常活动的微信小程序。此外,通义灵码还提供智能问答模式,帮助用户解决开发中的各种问题,极大简化了开发流程,让普通人的开发体验更加顺畅。
4163 11
技术小白如何利用DeepSeek半小时开发微信小程序?
|
小程序 Java 关系型数据库
weixin163基于微信小程序的校园二手交易平台系统设计与开发ssm(文档+源码)_kaic
本文介绍了一款基于微信小程序的校园二手物品交易平台的开发与实现。该平台采用Java语言开发服务端,使用MySQL数据库进行数据存储,前端以微信小程序为载体,支持管理员和学生两种角色操作。管理员可管理用户、商品分类及信息、交易记录等,而学生则能注册登录、发布购买商品、参与交流论坛等。系统设计注重交互性和安全性,通过SSM框架优化开发流程,确保高效稳定运行,满足用户便捷交易的需求,推动校园资源共享与循环利用。
|
小程序 JavaScript 前端开发
微信小程序开发全流程:从注册到上线的完整指南
这篇文章详细记录了微信小程序的完整开发到最终上线的每一个步骤。适合对小程序开发感兴趣的个人开发者或希望了解完整流程的学习者,涵盖了云开发、事件绑定、生命周期管理、组件使用等关键内容。
25031 14
|
小程序 关系型数据库 Java
weixin168“返家乡”高校暑期社会实践微信小程序设计与开发ssm(文档+源码)_kaic
本文探讨高校暑期社会实践微信小程序的开发与应用,旨在通过信息化手段提升活动管理效率。借助微信小程序技术、SSM框架及MySQL数据库,实现信息共享、流程规范和操作便捷。系统涵盖需求分析、可行性研究、设计实现等环节,确保技术可行、操作简便且经济合理。最终,该小程序可优化活动发布、学生信息管理和心得交流等功能,降低管理成本并提高工作效率。
|
JSON 缓存 小程序
微信小程序组件封装与复用:提升开发效率
本文深入探讨了微信小程序的组件封装与复用,涵盖组件的意义、创建步骤、属性与事件处理,并通过自定义弹窗组件的案例详细说明。组件封装能提高代码复用性、开发效率和可维护性,确保UI一致性。掌握这些技能有助于构建更高质量的小程序。
|
缓存 小程序 API
微信小程序页面导航与路由:实现多页面跳转与数据传递
本文深入探讨微信小程序的页面导航与路由机制,介绍多种页面跳转方式如`wx.navigateTo`、`wx.redirectTo`、`wx.switchTab`等,并讲解通过URL、全局变量和事件传递数据的方法。结合案例实现多页面跳转与数据传递,帮助开发者掌握这一重要技能。
|
JavaScript 小程序 开发者
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
3698 0
|
小程序
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
2854 0