Vue中Table组件Select的勾选和取消勾选事件详解


Posted in Javascript onMarch 19, 2019

简述

之间设计的界面中使用的是复选框控件,但是经过对官网了一些了解,使我们更加倾向于使用一些官网已经封装好的事件,就比如Table组件的Select勾选和取消勾选的这样一个事件。

勾选

首先我们需要说一下这个需求,如下图:

Vue中Table组件Select的勾选和取消勾选事件详解

勾选要实现如下的一个效果:对左侧Table的内容进行勾选,然后勾选行的数据传给右侧的Table中。

实现代码如下:

============1、按照官网封装好的样式去写Table组件=======
<template>
 <div>
 <Table></Table>
 </div>
</template>

<script>
 import axios from "axios";
 export default{
 data(){
 return{
 hotFoodData:[],
 selectedFoodData:[],
 columnHotFood:[
  {
  title:"菜名",
  key:"foodName"
  },
  {
  title:"份数(默认为不限份数,文本框输入限制)",
  key:"perlimitFood",
  width:300.
  align:"center",
  ///////////////////////数据双向绑定/////////////////////////////
  render:(h,params)=>{
  return h("Input",{
  props:{
   min:0,
   value:this.hotFoodData[params.index].perlimitFood //设置数字
  },
  on:{
   "on-change":event=>{
   this.hotFoodData[params.index].permitFood=event.target.value;
   }
  }
  });
  }
  },
  {
  type:"selection",
  width:100,
  align:"center"
  },
 ],
 column2: [
   {
    title: "菜名",
    key: "foodName"
   },
   {
    title: "限制份数(默认为不限份数)",
    key: "perlimitFood"
   }
   ]
 }
 methods:{
 }
 };
</script>

============2、向绑定数据中传送数据(后端传送数据、方法中书写)=============
 add() {
  var vm = this;
  //配置热菜菜单
  var urldata =
  "http://192.168.21.210:8016/Food/QueryFoodByShiId?FoodTN=18";
  axios.get(urldata).then(function(response) {
  vm.hotFoodData = response.data;
  });
 },
 created() {
  this.add();
 }

 
===========3、写勾选传输数据的事件==============
<Table border :columns="columnMainFood" :data="mainFoodData" @on-select="selectRow" @on-select-all="selectAllRow" ></Table>

method中:

//点击左边表格触发事件,向右侧表格添加元素
 selectRow(selection, row) {
  this.selectRowData = row;

  this.selectedFoodData.push(this.selectRowData);
  console.log(this.selectedFoodData);
 },

取消勾选

取消勾选的事件和勾选事件类似,如下(之前table组件的创建代码和数据传入不再重复)

<Table border :columns="columnMainFood" :data="mainFoodData" @on-select-cancel="selectCancel" ></Table>

method中:

//点击左侧表格,取消勾选,右侧数据也发生改变
 selectCancel(selection, row) {
  console.log("看一下row---------", row);
  this.selectedFoodData.pop(row);
 }

总结

还差的远呢,加油吧!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript textContent与innerText的异同分析
Oct 22 Javascript
javascript设计模式之中介者模式Mediator
Dec 30 Javascript
js实现ifram取父窗口URL地址的方法
Feb 09 Javascript
JavaScript控制网页平滑滚动到指定元素位置的方法
Apr 17 Javascript
JavaScript中的Math.SQRT1_2属性使用简介
Jun 14 Javascript
深入理解javascript函数参数与闭包
Dec 12 Javascript
js实现倒计时关键代码
May 05 Javascript
浅谈es6语法 (Proxy和Reflect的对比)
Oct 24 Javascript
微信小程序实现选项卡效果
Nov 06 Javascript
ES6 Proxy实现Vue的变化检测问题
Jun 11 Javascript
Layui带搜索的下拉框的使用以及动态数据绑定方法
Sep 28 Javascript
JS实现简单九宫格抽奖
Jun 28 Javascript
详解js加减乘除精确计算
Mar 19 #Javascript
jQuery添加新内容的四个常用方法分析【append,prepend,after,before】
Mar 19 #jQuery
浅谈JavaScript_DOM学习篇_图片切换小案例
Mar 19 #Javascript
vue多层嵌套路由实例分析
Mar 19 #Javascript
vue组件数据传递、父子组件数据获取,slot,router路由功能示例
Mar 19 #Javascript
vue项目移动端实现ip输入框问题
Mar 19 #Javascript
详解使用React.memo()来优化函数组件的性能
Mar 19 #Javascript
You might like
YII Framework框架教程之使用YIIC快速创建YII应用详解
2016/03/15 PHP
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.3
2008/03/22 Javascript
jQuery固定元素插件scrolltofixed使用指南
2015/04/21 Javascript
有关json_decode乱码及NULL的问题
2015/10/13 Javascript
zTree插件下拉树使用入门教程
2016/04/11 Javascript
浅析Javascript中bind()方法的使用与实现
2016/04/29 Javascript
JSON 数据详解及实例代码分析
2017/01/20 Javascript
ng-options和ng-checked在表单中的高级运用(推荐)
2017/01/21 Javascript
vuejs通过filterBy、orderBy实现搜索筛选、降序排序数据
2020/10/26 Javascript
NodeJS 实现多语言的示例代码
2018/09/11 NodeJs
详解VUE前端按钮权限控制
2019/04/26 Javascript
Vue 列表上下过渡效果的实例代码
2019/06/25 Javascript
layer弹出层自适应高度,垂直水平居中的实现
2019/09/16 Javascript
Vue 打包体积优化方案小结
2020/05/20 Javascript
如何在vue中使用video.js播放m3u8格式的视频
2021/02/01 Vue.js
Python的类实例属性访问规则探讨
2015/01/30 Python
Python三级菜单的实例
2017/09/13 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
2017/10/11 Python
python实现将文件夹下面的不是以py文件结尾的文件都过滤掉的方法
2018/10/21 Python
python开发之anaconda以及win7下安装gensim的方法
2019/07/05 Python
关于Pytorch MaxUnpool2d中size操作方式
2020/01/03 Python
Python机器学习工具scikit-learn的使用笔记
2021/01/28 Python
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
Juice Beauty官网:有机美容产品,护肤与化妆品
2020/06/13 全球购物
枚举和一组预处理的#define有什么不同
2016/09/21 面试题
秘书行业自我鉴定范文
2013/12/30 职场文书
房地产促销活动方案
2014/03/01 职场文书
上课说话检讨书
2015/01/27 职场文书
员工加薪申请报告
2015/05/15 职场文书
蜗居观后感
2015/06/11 职场文书
唱歌比赛拉拉队口号
2015/12/25 职场文书
干货:企业内部人才推荐奖励方案!
2019/07/09 职场文书
Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤
2021/03/29 Python
ztree+ajax实现文件树下载功能
2021/05/18 Javascript
各种货币符号快捷输入
2022/02/17 杂记
Spring this调用当前类方法无法拦截的示例代码
2022/03/20 Java/Android