前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【VIDEO_Parent】-创作者前端-更新创作者

【VIDEO_Parent】-创作者前端-更新创作者

原创
作者头像
BNTang
发布2023-11-30 23:22:09
1290
发布2023-11-30 23:22:09
举报

代码实现

点击编辑按钮进行页面路由跳转

定义点击编辑按钮的路由如下图

代码语言:javascript
复制
{
  path: 'edit/:id',
  name: '编辑',
  component: () => import('@/views/video/author/save'),
  meta: {title: '编辑', icon: 'tree'},
  hidden: true
}

修改编辑按钮,修改点击编辑按钮跳转的路由地址,使用 router-link 如下图

代码语言:html
复制
<!--
修改跳转,让其跳转到路由当中,编辑路由页面和添加的是一样,编辑当中是有参数
-->
<router-link :to="'/author/edit/'+scope.row.id">
  <el-button type="primary" size="mini" icon="el-icon-edit">修改</el-button>
</router-link>

更新数据回显

编写请求 api

代码语言:javascript
复制
// 4.根据id查询作者
getOneAuthor(id) {
  return request({
    // 路由参数拼接
    url: `/service_video/author/getAuthorWithId/${id}`,
    method: 'get'
  })
}

获取参数,然后发送请求

代码语言:javascript
复制
// 一进来就要获取参数
created() {
  // 判断有没有参数,如果有,获取参数
  if (this.$route.params && this.$route.params.id) {
    let authorId = this.$route.params.id;
    // 根据id获取该条参数对应的数据,发送请求到服务器当中获取数据
    author.getOneAuthor(authorId).then(res => {
      this.author = res.data.item;
    }).catch(error => {
      this.$message.error("服务器繁忙,请稍后再试!");
    });
  } else {
    this.author = {
      sort: 0,
      level: 1
    }
  }
}

让下拉列表进行默认选中

更新数据

添加更新创作者的请求 api

代码语言:javascript
复制
// 5.更新创作者
updateAuthor(author) {
  return request({
    url: '/service_video/author/updateAuthor',
    method: 'post',
    // data会自动转成JSON传递到接口当中
    data: author
  });
}

编写更新创作者请求的方法如下

代码语言:javascript
复制
// 更新
updateAuthor(){
  // 调用更新的api
  author.updateAuthor(this.author).then(res=>{
    // 更新成功
    this.$message({
      type: 'success',
      message: '更新成功!'
    });
  }).catch(error=>{
    this.$message.error("更新失败!");
  });
  // 跳转到创作者列表页
  this.$router.push({path: '/author/table'});
}

修改之前的添加方法,判断,当前是否为更新或者添加,达到复用

代码语言:javascript
复制
saveClick() {
  // 根据有没有 id 判断,是添加还是更新
  // 如果有id,那么就是更新,否则就是添加
  if (this.author.id) {
    // 更新
    this.updateAuthor();
  } else {
    // 添加
    this.addAuthor();
  }
},

最后

我正在参与2023腾讯技术创作特训营第三期有奖征文,组队打卡瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 代码实现
  • 更新数据回显
  • 更新数据
  • 最后
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档