这篇文章主要介绍了iview的table组件中使用选择框,日期,可编辑表格,超链接等组件。

1.select选择组件

// tableColumn数组响应对象需要传入一个固定的option数组,如果该数组是异步动态生成的该组件不能正常渲染,因为在获取option数组之前table渲染时option是undefined。
supportSelect(item) {
item.render = (h, params)=>{
return h('Select', {
props: {
value: params.row[params.column.key],
size: 'small',
transfer: true
},
on: {
'on-change': (val)=>{
this.insideTableData[params.index][params.column.key] = val
}
},
},item.option.map(item=>{
return h('Option', {
props: {
value: item.value || item,
label: item.label || item
}
}, item.label || item)
}))
}
return item
}

2.可编辑表格

// 可编辑表格使用了contenteditable属性,使得表格编辑更加简单干净
supportEdit(item, index){
item.render = (h, params)=>{
return h('div', {
style: {
padding: '4px 0',
width: '100%'
},
props: {
value: this.insideTableData[params.index][params.column.key]
},
attrs: {
contenteditable: this.editable,
title: '点击可编辑'
},
on: {
'blur': evt=>{
evt.target.value = evt.target.innerText || params.row[params.column.key]
params.row[params.column.key] = evt.target.innerText
this.insideTableData[params.index][params.column.key] = evt.target.innerText
}
}
}, params.row[params.column.key])
}
return item
}

3.日期组件

// 使用iview的DatePicker组件渲染就行
supportDate(item){
item.render = (h, params)=>{
return h('DatePicker', {
props: {
clearable: false,
placeholder: '请选择日期',
value: params.row[params.column.key],
type: 'date',
format: 'yyyy-MM-dd',
size: 'small'
},
on: {
'on-change': (val)=>{
this.insideTableData[params.index][params.column.key] = val
}
}
})
}
return item
}

4.表格中添加超链接

// 这里的handleLink方法是在table组件中定义好的使用$emit让父组件调用
supportLink(item){
item.render = (h, params)=>{
return h('a', {
style: {
textDecoration: 'underline'
},
on: {
'click': ()=>{
this.handleLink(params.row)
}
}
}, params.row[params.column.key])
}
return item
}

iview的table组件中加入超链接组件,可编辑组件,选择组件,日期组件的更多相关文章

  1. vue组件中的样式属性:scoped,解决在父组件中无法修改子组件样式问题

    Scoped CSS规范是Web组件产生不污染其他组件,也不被其他组件污染的CSS规范. vue组件中的style标签标有scoped属性时表明style里的css样式只适用于当前组件元素,它是通过使 ...

  2. vue组件中使用iframe元素

    需要在本页面中展示vue组件中的超链接,地址栏不改变的方法: <template> <div class="accept-container"> <d ...

  3. Source Qualifter组件中sqlquery过长导致截取

    问题:Source Qualifter组件中sqlquery过长导致截取原因:Source Qualifter组件中sqlquery可以接受的最长字符数是32767个字符,超过这个数字会导致截取解决方 ...

  4. Vue系列之 => 组件中的data和methods

    使用data <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...

  5. Vue组件中引入jQuery

    一.安装jQuery依赖 在使用jQuery之前,我们首先要通过以下命令来安装jQuery依赖: npm install jquery --save # 如果你更换了淘宝镜像,可以使用cnpm来安装, ...

  6. vue框架之自定义组件中使用v-model

    通常 vue在html常见表单空间支持v-model双向绑定例如 <input v-model="message" placeholder="edit me&quo ...

  7. 微信小程序在组件中获取界面上的节点信息wx.createSelectorQuery

    节点信息查询 API 可以用于获取节点属性.样式.在界面上的位置等信息. 最常见的用法是使用这个接口来查询某个节点的当前位置,以及界面的滚动位置. 示例代码: const query = wx.cre ...

  8. VUe.js 父组件向子组件中传值及方法

    父组件向子组件中传值 1.  Vue实例可以看做是大的组件,那么在其内部定义的私有组件与这个实例之间就出现了父子组件的对应关系. 2. 父子组件在默认的情况下,子组件是无妨访问到父组件中的数据的,所以 ...

  9. vue组件中的data为什么是函数?

    一.vue组件中的data为什么是函数 为了保证组件的独立性 和 可 复用性,data 是一个函数,组件实例化的时候这个函数将会被调用,返回一个对象,计算机会给这个对象分配一个内存地址,你实例化几次, ...

随机推荐

  1. Visual Studio 2019更新到16.1.6

    Visual Studio 2019更新到16.1.6 此次更新主要是修复几个安全漏洞,如CVE-2019-1077(VS自动更新漏洞).CVE-2019-1075(ASP.net Core欺骗漏洞) ...

  2. Flink 实现指定时长或消息条数的触发器

    Flink 中窗口是很重要的一个功能,而窗口又经常配合触发器一起使用. Flink 自带的触发器大概有: CountTrigger: 指定条数触发 ContinuousEventTimeTrigger ...

  3. Java Sound : generate play sine wave - source code

    转载自:http://ganeshtiwaridotcomdotnp.blogspot.com/2011/12/java-sound-generate-play-sine-wave.html Work ...

  4. Python第一阶段05

    1.内置方法: 2.Json序列化: import json info = { 'name': 'sisi', } f = open("test.text", "w&qu ...

  5. laravel redis sentinel 和 redis cluster 配置

    laravel redis sentinel配置: 'redis' => [ 'cluster' => false, 'options' => [ 'replication' =&g ...

  6. 08点睛Spring MVC4.1-Spring MVC的配置(含自定义HttpMessageConverter)

    8.1 配置 Spring MVC的配置是通过继承WebMvcConfigurerAdapter类并重载其方法实现的; 前几个教程已做了得配置包括 01点睛Spring MVC 4.1-搭建环境 配置 ...

  7. robot:接口入参为图片时如何发送请求

    https://www.cnblogs.com/changyou615/p/8776507.html 接口是上传图片,通过F12抓包获得如下信息 由于使用的是RequestsLibrary,所以先看一 ...

  8. SpringBoot里自定义banner

    国外有一个专门用来生成banner的网址:http://patorjk.com/software/taag ,打开这个网址,生成你想要的字儿. 生成时,我们可以选择自己喜欢的字体等信息. 完成后,选择 ...

  9. 【ARM-Linux开发】ctrl-xxx的对应的signal含义

    ctrl-c 发送 SIGINT 信号给前台进程组中的所有进程.常用于终止正在运行的程序.ctrl-z 发送 SIGTSTP 信号给前台进程组中的所有进程,常用于挂起一个进程.ctrl-d 不是发送信 ...

  10. 最新 上海轻轻java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.上海轻轻等10家互联网公司的校招Offer,因为某些自身原因最终选择了上海轻轻.6.7月主要是做系统复习.项目复盘.Leet ...