vue-element-admin批量删除
taotaoit Vue 2023-06-08 709 0
关于本站

“最难不过坚持”

本人承接扒站仿站,php网站维护,病毒查杀,网站编辑,网站改版,html制作

有需要网站维护,改版,病毒查杀,网站编辑,网站备案,html制作等相关的工作可以联系我。
本人有多年相关工作经验,也可提供免费咨询,交个朋友。
有需要探讨问题的朋友,也可以加我微信,共同探讨!
微信:15011482830 QQ:408917339

6503113 2619 39
最新评论
https://jueru.net/
评 留言
:weixiao:
评 留言
:shuijiao: :weiqu: :zhenbang: :leng:
评 留言
:yiwen: :yiwen: :yiwen: :yiwen:
评 EasySass: could not generate CSS file. See Output panel for details.
这个业务逻辑多少都有点奇怪了,阅读浏览次数增值在新闻详情页的控制器方法里setInc,这怎么还写进模型事件里了。如果非要用onAfterRead也可以,把新闻文章的内容单独分出来一个news_content表,然后把它和news做关联,然后给news_content表的onAfterRead事件做增值处理,这样点进新闻页内查询到文章内容时才会触发它。
评 TP6模型事件-查询后onAfterRead不好用
文章标签更多
ThinkPHP (254)
Mysql (58)
DedeCms (33)
jQuery (67)
证件照 (1)
setInc (4)
setDec (4)
onclick (5)
打开边栏(ESC) 关闭边栏(ESC)

vue-element-admin批量删除

用vue和elementUI实现批量操作常见于table表格,前提是table表第一列是可以多选的框:

<el-table-column type="selection" width="55"> </el-table-column>
from clipboard

如上图所示,当没有选中任何一项时,批量删除按钮是不可点击的,当选中其中一项或多项时,批量删除按钮变成可点击;

下边就具体介绍一下,如何实现批量删除功能:
1.首先给按钮加disabled属性

<el-button class="filter-item" type="danger" @click="handleDelAll" :disabled="ids.length === 0" style="margin-right: 10px;" icon="el-icon-delete">批量删除</el-button>
//data里事先声明ids
data:{
    ids:[]
}
也就是说,当ids为空数组时,按钮不可点击;

2.给table添加change事件,动态获取ids

<el-table
    :data="tableData"
    :height="tableHeight"
    v-loading="tableLoading"
    border
    stripe
    size="mini"
    style="width: 100%"
    @selection-change="handleSelectionChange">
 ......
然后在change事件动态获取ids

// 全选,bankId是后台数据表的主键id
    handleSelectionChange(val) {
      this.ids = val.map(el => el.bankId)
      // console.log(this.ids);
    },
3,点击按钮,执行批量删除

// 批量删除
    handleDelAll(){
      this.$confirm('确定要批量删除选中信息吗?', {
        closeOnClickModal: false,
        type: 'warning',
        beforeClose: (action, instance, done) => {
          if (action === 'confirm') {
            instance.confirmButtonLoading = true
            reqDelAll(this.ids).then(res => {
              done()
              instance.confirmButtonLoading = false
              this.getList()
              this.$message.success(res.msg)
            }).catch(err => {
              console.log(err)
              instance.confirmButtonLoading = false
            })
          } else {
            done()
          }
        }
      }).catch(() => {})
    }
4,axios请求方法

// 批量删除
export function reqDelAll(ids) {
  return request({
    url: '/admin/bank/delAll',
    method: 'post',
    data: { ids }
  })
}
5,后台批量删除接口(thinkphp)

/**
	 * 批量删除
	 */
	public function delAll(){
		$ids = input('post.ids',0);
		$rs = $this->where([['bankId','in',$ids]])->setField(['dataFlag'=>-1]);
		// dump($rs);
		// die;
		if(false !== $rs){
			return ZHTReturn('操作成功',200);
		}else{
			return ZHTReturn('操作失败',403);
		}
	}

版权声明:本站原创文章,允许自由转载。

相关推荐
接口返回request failed with status code 500错误
Vue | 2023-02-20 2659
接口返回request failed with status code 500错误 登录界面,验证账号密码成功,但是返回500错误 可能原因:linux服务器,用tp5搭建的后台及接口,会生成一部分缓存文件,但是linux默认没有权限创建数据,所以,只要在缓存文件夹runtime添加写的权限即可
vue项目npm run serve默认浏览器打开
Vue | 2022-11-16 1905
1、在vue项目中,输入命令行  npm run serve   浏览器实现自动打开功能,需要添加 在配置文件(package.json)中添加 --open 2、浏览器自动打开后,可能会出现网址0.0.0.0:8080页面错误,见图 3、解决方法: 在--open后面再加上--...
评论:0条
评论加载中...
发表评论