美文网首页
在iView的Table组件Render函数中使用自定义指令

在iView的Table组件Render函数中使用自定义指令

作者: 桃花谷主V | 来源:发表于2019-12-06 14:36 被阅读0次

    iviewTable组件中,render函数非常好用,可以极大程度的解决定制化的需求。那么自定义指令在render函数中如何使用呢?且看下面分解。

    自定义指令

    以下以一个防止按钮快速重复点击为例

    • 新建一个一个js文件,定义自定义指令
    // preventReClick.js
    import Vue from 'vue'
    Vue.directive('preventReClick', {
      inserted(el, binding) {
        el.addEventListener('click',() => {
          if (!el.disabled) {
            el.disabled = true
            setTimeout(() => {
              el.disabled = false
            },2000)
          }
        })
      }
    })
    
    • 全局引入自定义指令
    // main.js
    import "@/directive/preventReClick";
    

    在Render函数中使用自定义指令

    columns: [
      {
        title: '已匹配合同人数',
        key: 'matchCount',
        minWidth: 80,
        render: (h,params) => {
          return h('div',{
            style: {
              display: 'flex',
              justifyContent: 'space-between'
            }
          },[
            h('span',params.row.matchCount),
            h('Button',{
              style: {
                display: params.row.canPress && (Number(params.row.numberCount) > params.row.matchCount) ? 'inline-block' : 'none',
                height: '24px',
                padding: '0 5px'
              },
              on: {
                click: async() => {
                  let data = {
                    incomeBatchId: params.row.id,
                    settlementId: params.row.settlementId
                  }
                  let res = await pressToMatchContract(data)
                  if (res.code === 10200 && res.isSuccess) {
                    this.$Message.success('催办成功')
                  } else {
                    this.$Modal.error({
                      title: '错误',
                      content: res.message
                    })
                  }
                }
              },
              // 使用自定义指令
              directives: [
                {
                  name: 'setTimeClick',
                  // 如有其他参数可以在此添加
                }
              ]
            },'催办')
          ])
        }
      },
    ]
    

    相关文章

      网友评论

          本文标题:在iView的Table组件Render函数中使用自定义指令

          本文链接:https://www.haomeiwen.com/subject/sdhegctx.html