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

目录
相关文章
|
1月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
485 7
|
1月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
541 1
|
28天前
|
小程序 前端开发 开发者
小程序的页面如何布局?
【10月更文挑战第16天】小程序的页面如何布局?
46 1
|
1月前
|
缓存 小程序 索引
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
193 1
|
1月前
|
小程序 前端开发 数据安全/隐私保护
微信小程序全栈开发中的身份认证与授权机制
【10月更文挑战第3天】随着移动互联网的发展,微信小程序凭借便捷的用户体验和强大的社交传播能力,成为企业拓展业务的新渠道。本文探讨了小程序全栈开发中的身份认证与授权机制,包括手机号码验证、微信登录、第三方登录及角色权限控制等方法,并强调了安全性、用户体验和合规性的重要性,帮助开发者更好地理解和应用这一关键技术。
63 5
|
1月前
|
小程序 JavaScript API
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
这篇文章介绍了如何在uni-app和微信小程序中实现将图片保存到用户手机相册的功能。
547 0
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
|
28天前
|
存储 小程序 安全
微信的开发管理都需要配置什么?
【10月更文挑战第17天】微信的开发管理都需要配置什么?
30 0
|
1月前
|
JavaScript 小程序 开发者
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
322 0
|
1月前
|
小程序
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
490 0
|
1月前
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
111 7