SOURCE

console 命令行工具 X clear

                    
>
console
var Main = {
    data() {
        return {
            tableData: [
                { id: 10001, name: 'Test1', nickname: 'T1', role: 'Develop', sex: '0', sex2: ['0'], num1: 40, age: 28, address: 'Shenzhen', date12: '', date13: '' },
                { id: 10002, name: 'Test2', nickname: 'T2', role: 'Designer', sex: '1', sex2: ['0', '1'], num1: 44, age: 22, address: 'Guangzhou', date12: '', date13: '2020-08-20' },
                { id: 10003, name: 'Test3', nickname: 'T3', role: 'Test', sex: '0', sex2: ['1'], num1: 200, age: 32, address: 'Shanghai', date12: '2020-09-10', date13: '' },
                { id: 10004, name: 'Test4', nickname: 'T4', role: 'Designer', sex: '1', sex2: ['1'], num1: 30, age: 23, address: 'Shenzhen', date12: '', date13: '2020-12-04' },
                { id: 10005, name: 'Test5', nickname: 'T5', role: 'Develop', sex: '0', sex2: ['1', '0'], num1: 20, age: 30, address: 'Shanghai', date12: '2020-09-20', date13: '' },
                { id: 10006, name: 'Test6', nickname: 'T6', role: 'Designer', sex: '1', sex2: ['0'], num1: 10, age: 21, address: 'Shenzhen', date12: '', date13: '' },
                { id: 10007, name: 'Test7', nickname: 'T7', role: 'Develop', sex: '0', sex2: ['0'], num1: 5, age: 29, address: 'Shenzhen', date12: '2020-01-02', date13: '2020-09-20' },
                { id: 10008, name: 'Test8', nickname: 'T8', role: 'PM', sex: '1', sex2: ['0'], num1: 2, age: 35, address: 'Shenzhen', date12: '', date13: '' }
            ],
            sexList: [
                { label: '', value: '' },
                { label: '男', value: '1' },
                { label: '女', value: '0' }
            ],
            isformat: true,
            fresh: true,
            formatter: (format) => {
                return format.cellValue.toFixed(1);
            },
        }
    },
    methods: {
        handleRowClick({row}) {
            console.log('cellSelected row:', row)
        },
        cellClickEvent({row}) {
            console.log('Clicked row:', row)
        },
        renderd(data) {
            console.log(data)
            return data
        },
        change() {
            this.isformat = !this.isformat
            this.updateFormatter()
        },
        formatterUnit(datas, d) {
            d = this.isformat ? d : d - 1
            console.log(this.isformat, d)
            return datas.cellValue.toFixed(1)
        },
        formatterUnit2(datas) {
            return datas.cellValue.toFixed(2)
        },
        formatterUnit3(datas) {
            return datas.cellValue.toFixed(3)
        },
        updateFormatter() {
            // 动态修改 formatter
            this.formatter = (format) => {
                return this.isformat ? format.cellValue.toFixed(1) : format.cellValue.toFixed(2);
            }
            this.fresh = false
            this.$nextTick(() => {
                this.fresh = true
            })
        }
    },
    mounted() {

    }
};

var app = new Vue(Main).$mount('#app')
<script src="https://unpkg.com/vue@2.6.0">

</script>
<script src="https://unpkg.com/xe-utils">

</script>
<script src="https://unpkg.com/vxe-table@3">

</script>

<div id="app">
	<template>
		<div>
			<button @click="change">修改格式</button>
            <button @click="updateFormatter">修改格式2</button>
            <button @click="updateFormatter">行点击</button>
			<vxe-table  @cell-selected="handleRowClick" 
            @cell-click="cellClickEvent" v-if="fresh" ref="xTable"
             border resizable show-overflow :data="tableData" 
             :mouse-config="{selected: true}"
            >
				<vxe-column type="seq" width="60"></vxe-column>
                <vxe-colgroup title="分组2">
                    <vxe-column field="num1" title="Number" :edit-render="{}" 
                        :formatter="isformat ? format => formatterUnit(format,1) : ''"
                    >
                        <template #edit="{ row,column }">
                            <vxe-input v-model="row.num1" type="number" placeholder="请输入数值"></vxe-input>
                        </template>
                    </vxe-column>
                     <vxe-column field="age" title="age" :edit-render="{}" :formatter="formatter">
                        <template #edit="{ row,column }">
                            <vxe-input v-model="row.age" type="number" placeholder="请输入数值"></vxe-input>
                        </template>
                    </vxe-column>
                </vxe-colgroup>
                <vxe-column field="address" title="Address" :edit-render="{}">
                    <template #edit="{ row }">
                    <vxe-input v-model="row.address" type="text"></vxe-input>
                    </template>
                </vxe-column>
                </vxe-table>
		</div>
	</template>
</div>
@import url("https://unpkg.com/vxe-table/lib/style.css");