JSFiddle - React, Tailwind, and code Playground

by abernov

HTML

<script src="//unpkg.com/vue/dist/vue.js"></script>
<script src="//unpkg.com/[email protected]/lib/index.js"></script>
<div id="app">
<template>
  <el-table ref="singleTable" :data="tableData" highlight-current-row @current-change1="handleCurrentChange" style="width: 100%">
    <el-table-column type="index" width="50">
    </el-table-column>
    <el-table-column property="date" label="Date" width="120">
    </el-table-column>
    <el-table-column property="name" label="Name" width="120">
    </el-table-column>
    <el-table-column property="address" label="Address">
    </el-table-column>
  </el-table>
  <div style="margin-top: 20px">
    <el-button @click="setCurrent(tableData[1])">Select second row</el-button>
    <el-button @click="setCurrent()">Clear selection</el-button>
    <el-button @click="setData()">3</el-button>
  </div>
</template>
</div>

SCSS

@import url("//unpkg.com/[email protected]/lib/theme-chalk/index.css");

Babel + JSX

var Main = {
    data() {
      return {
        tableData: [],
        currentRow: null
      }
    },

    methods: {
      setCurrent(row) {
        this.$refs.singleTable.setCurrentRow(row);
      },
      handleCurrentChange(val) {
//        this.currentRow = val;
      },
      setData() {
      	let aa = [{
          date: '2016-05-03',
          name: 'Tom1',
          address: 'No. 189, Grove St, Los Angeles'
        }, {
          date: '2016-05-02',
          name: 'Tom1',
          address: 'No. 189, Grove St, Los Angeles'
        }]
	      this.tableData = aa;
      }
    }
  }
var Ctor = Vue.extend(Main)
new Ctor().$mount('#app')