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 相关文章推荐
DEFER怎么用?
Jul 01 Javascript
原生js实现淘宝首页点击按钮缓慢回到顶部效果
Apr 06 Javascript
js实现带圆角的多级下拉菜单效果
Aug 28 Javascript
解析Vue.js中的组件
Feb 02 Javascript
vue 表单输入格式化中文输入法异常问题
May 30 Javascript
浅谈vue项目打包优化策略
Sep 29 Javascript
jQuery实现ajax的嵌套请求案例分析
Feb 16 jQuery
对layui中的onevent 和event的使用详解
Sep 06 Javascript
vue 解决computed修改data数据的问题
Nov 06 Javascript
JS 事件机制完整示例分析
Jan 15 Javascript
Postman无法正常返回结果问题解决
Aug 28 Javascript
Vue中inheritAttrs的使用实例详解
Dec 31 Vue.js
详解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
解析php通过cookies获取远程网页的指定代码
2013/06/25 PHP
thinkPHP查询方式小结
2016/01/09 PHP
php利用fsockopen GET/POST提交表单及上传文件
2017/05/22 PHP
PHP让网站移动访问更加友好方法
2019/02/14 PHP
JavaScript 对象链式操作测试代码
2010/04/25 Javascript
一个简单的JavaScript数据缓存系统实现代码
2010/10/24 Javascript
javascript 得到文件后缀名的思路及实现
2020/05/09 Javascript
利用NodeJS和PhantomJS抓取网站页面信息以及网站截图
2013/11/18 NodeJs
关于javascript模块加载技术的一些思考
2014/11/28 Javascript
jquery中表单 多选框的一种巧妙写法
2015/09/06 Javascript
Jquery和angularjs获取check框选中的值的方法汇总
2016/01/17 Javascript
深入理解Angular2 模板语法
2016/08/07 Javascript
jQuery基本选择器之标签名选择器
2016/09/03 Javascript
创建一般js对象的几种方式
2017/01/19 Javascript
微信小程序实现带刻度尺滑块功能
2017/03/29 Javascript
详解vue-cli开发环境跨域问题解决方案
2017/06/06 Javascript
jQuery 实现双击编辑表格功能
2017/06/19 jQuery
微信小程序开发animation心跳动画效果
2017/08/16 Javascript
vue自定义底部导航栏Tabbar的实现代码
2018/09/03 Javascript
electron + vue项目实现打印小票功能及实现代码
2018/11/25 Javascript
JS实现马赛克图片效果完整示例
2019/04/13 Javascript
判断文字超过2行添加展开按钮,未超过则不显示,溢出部分显示省略号
2019/04/28 Javascript
Windows和Linux下使用Python访问SqlServer的方法介绍
2015/03/10 Python
Python3遍历目录树实现方法
2015/05/22 Python
python使用pandas实现数据分割实例代码
2018/01/25 Python
ubuntu安装mysql pycharm sublime
2018/02/20 Python
python 实现数字字符串左侧补零的方法
2018/12/04 Python
python opencv如何实现图片绘制
2020/01/19 Python
Python 实现向word(docx)中输出
2020/02/13 Python
H5页面适配iPhoneX(就是那么简单)
2019/12/02 HTML / CSS
荷兰手表网站:Watch2Day
2018/07/02 全球购物
跟单业务员岗位职责
2014/03/08 职场文书
售后服务承诺书模板
2014/05/21 职场文书
环卫工人慰问信
2015/02/15 职场文书
2016大学生入党积极分子心得体会
2016/01/06 职场文书
教你使用pyinstaller打包Python教程
2021/05/27 Python