浅谈Vue render函数在ElementUi中的应用


Posted in Javascript onSeptember 06, 2018

vue的render函数在日常开发中被广泛应用,今天以ElementUI中的table表头重构为引,实际应用一下借助render函数实现表头搜索,不足之处请多多指教!

首先引入官方demo

<el-table :data="tableData" style="width: 100%" :border="true">
 <el-table-column prop="date" label="日期" min-width="20%" align="center">
 </el-table-column>
 <el-table-column prop="name" label="姓名" min-width="60%" align="center">
 </el-table-column>
 <el-table-column prop="address" label="地址" align="center">
 </el-table-column>
</el-table>

实现效果

浅谈Vue render函数在ElementUi中的应用

之后为姓名列添加 :render-header=”renderHeader” 绑定render函数

<el-table-column :render-header="renderHeader" prop="name" label="姓名" min-width="60%" align="center" >
</el-table-column>

在methods中实现renderHeader方法

methods: {
 renderHeader (createElement) {
  let self = this
  return createElement('div', {
  domProps: {
   innerHTML: `
    <span class="span">姓名</span>
    <input type="text" class="input">
    `
  },
  style: {
   padding: '0',
   lineHeight: '1',
   marginTop: '5px',
   width: '100%'
  },
  on: {
   '!click': function (e) {
   let span = document.getElementsByClassName('span')[0]
   let input = document.getElementsByClassName('input')[0]
   span.style.display = 'none'
   input.style.display = 'inline-block'
   input.focus()
   event.stopPropagation()
   }
  }
  })
 }
 },

在less文件中配合实现DOM的展示和隐藏

.span {
  display: inline-block;
}
.input {
  display: none;
}

此时已经可以实现点击表头出现输入框

浅谈Vue render函数在ElementUi中的应用

之后需要为其绑定input事件

on: {
 '!click': function (e) {
 let span = document.getElementsByClassName('span')[0]
 let input = document.getElementsByClassName('input')[0]
 span.style.display = 'none'
 input.style.display = 'inline-block'
 input.focus()
 event.stopPropagation()
 },
 input: function (event) {
  self.inputValue = event.target.value // 在data中定义inputValue
 }
}

之后我们就可以监听data中的inputValue,实现一些列业务逻辑

watch: {
 inputValue: function () {
  console.log(this.inputValue)
 }
 }

以上这篇浅谈Vue render函数在ElementUi中的应用就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
你的编程语言可以这样做吗?
Sep 07 Javascript
javascript 单选框,多选框美化代码
Aug 01 Javascript
jquery 学习之一 对象访问
Nov 23 Javascript
JQuery一种取同级值的方式(比如你在GridView中)
Mar 15 Javascript
JQuery包裹DOM节点的方法
Jun 11 Javascript
JS实现点击网页判断是否安装app并打开否则跳转app store
Nov 18 Javascript
jquery插件锦集【推荐】
Dec 16 Javascript
easyUI combobox实现联动效果
Jan 17 Javascript
在Express中提供静态文件的实现方法
Oct 17 Javascript
uni-app使用微信小程序云函数的步骤示例
May 22 Javascript
在vue中created、mounted等方法使用小结
Jul 21 Javascript
vue 导航守卫和axios拦截器有哪些区别
Dec 19 Vue.js
解决vue同一slot在组件中渲染多次的问题
Sep 06 #Javascript
vue template中slot-scope/scope的使用方法
Sep 06 #Javascript
vue-cli 默认路由再子路由选中下的选中状态问题及解决代码
Sep 06 #Javascript
jQuery实现鼠标移入移出事件切换功能示例
Sep 06 #jQuery
Vue下拉框回显并默认选中随机问题
Sep 06 #Javascript
vue兄弟组件传递数据的实例
Sep 06 #Javascript
webpack4简单入门实例
Sep 06 #Javascript
You might like
让php处理图片变得简单 基于gb库的图片处理类附实例代码下载
2011/05/17 PHP
php实现文件下载更能介绍
2012/11/23 PHP
浅谈PHP中foreach/in_array的使用
2015/11/02 PHP
php获取当前页面完整URL地址
2015/12/30 PHP
php命令行模式代码实例详解
2021/02/26 PHP
js 幻灯片的实现
2011/12/06 Javascript
谈谈JavaScript中的函数与闭包
2013/04/14 Javascript
Node.js和MongoDB实现简单日志分析系统
2015/04/25 Javascript
JavaSacript中charCodeAt()方法的使用详解
2015/06/05 Javascript
jQuery实现从身份证号中获取出生日期和性别的方法分析
2016/02/25 Javascript
js替换字符串中所有指定的字符(实现代码)
2016/08/17 Javascript
javascript中Number的方法小结
2016/11/21 Javascript
js时间戳和c#时间戳互转方法(推荐)
2017/02/15 Javascript
vue.js分页中单击页码更换页面内容的方法(配合spring springmvc)
2018/02/10 Javascript
vue组件实现弹出框点击显示隐藏效果
2020/10/26 Javascript
Node.js实现用户评论社区功能(体验前后端开发的乐趣)
2019/05/09 Javascript
[46:53]Secret vs Liquid 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python正则匹配查询港澳通行证办理进度示例分享
2013/12/27 Python
python实现TCP服务器端与客户端的方法详解
2015/04/30 Python
python使用adbapi实现MySQL数据库的异步存储
2019/03/19 Python
利用Python+阿里云实现DDNS动态域名解析的方法
2019/04/01 Python
python实现代码统计程序
2019/09/19 Python
python opencv图片编码为h264文件的实例
2019/12/12 Python
python 引用传递和值传递详解(实参,形参)
2020/06/05 Python
一文读懂python Scrapy爬虫框架
2021/02/24 Python
html5拖曳操作 HTML5实现网页元素的拖放操作
2013/01/02 HTML / CSS
巴基斯坦购物网站:Goto
2019/03/11 全球购物
NOTINO英国:在线购买美容和香水
2020/02/25 全球购物
主键(Primary Key)约束和唯一性(UNIQUE)约束的区别
2013/05/29 面试题
《跟踪台风的卫星》教学反思
2014/04/10 职场文书
创先争优活动心得体会
2014/09/04 职场文书
运动会跳远广播稿5篇
2014/09/17 职场文书
天坛导游词
2015/02/02 职场文书
结婚保证书(三从四德)
2015/02/26 职场文书
准备去美国留学,那么大学申请文书应该怎么写?
2019/08/12 职场文书
高考要来啦!用Python爬取历年高考数据并分析
2021/06/03 Python