vue中用table_vue+elementUI table篇

本文介绍了如何在Vue项目中结合table_vue和ElementUI来实现表格内容展示、编辑、删除功能。通过`@selection-change`事件处理选中状态,并提供了编辑提交与删除操作的方法。
摘要由CSDN通过智能技术生成

1.table内容展示

style="width: 100%;" @selection-change="selectionChange">

{{scope.row.type === 1 ? '时效卡' : '次卡'}}

{{ scope.row.type===1 ? scope.row.times + '天' : scope.row.times + '次'}}

{{scope.row.price}}

{{scope.row.floor_price}}

{{scope.row.app_status === 1? '下架':'上架'}}

{{scope.row.saas_status === 1? '下架' : '上架'}}

icon

{{scope.row.created_at}}

@click="handleEdit(scope.$index, scope.row)">编辑

删除

确定

取消

2.编辑

handleEdit(index, row) {this.subStatus = 'edit_' +indexthis.formData =Object.assign({}, row)this.DialogVisible = true

this.add_edit = true

this.$nextTick(() =>{this.$refs.imgbox.setImg(row.photo)

})

},

editsubmit() {

let self= this

this.$refs.formbox.validate(valid =>{if(valid) {

self.loading= trueeditVipCard(self.formData).then(response=>{

self.loading= falseself.DialogVisible= falselet index= self.subStatus.split('_')[1]

self.$set(self.tableList, index, response.data)//this.getList()

})

}else{

console.log('error submit!!')return false}

})

},

3.删除

handleDelete(index, rows) {

deleteVipCard(rows[index].id).then(res=>{

rows.splice(index,1)

}).catch(() =>{this.common.Message('error', '删除失败!')

})

}

4.table中使用checkbox,判断选中状态

在table中加入@selection-change="selectionChange"

//点击checkbox获得对应id

selectionChange(selection) {this.groupOprate.ids =[]for (let i = 0; i < selection.length; i++) {this.groupOprate.ids.push(selection[i].id)

}

console.log(this.groupOprate.ids)

},

### 回答1: 在 Vue 中使用 `table_vue` 并通过 `render` 函数渲染表格,可以按照以下步骤进行操作: 1. 安装 `table_vue`: ```bash npm install table_vue --save ``` 2. 在组件中引入 `table_vue` 和 `render` 函数: ```javascript import { Table, TableColumn } from 'table_vue'; ``` 3. 在 `render` 函数中使用 `Table` 和 `TableColumn` 组件来渲染表格: ```javascript render() { return ( <div> <Table data={this.tableData}> <TableColumn prop="name" label="Name" /> <TableColumn prop="age" label="Age" /> <TableColumn prop="gender" label="Gender" /> </Table> </div> ); } ``` 在上述代码中,`Table` 组件通过 `data` 属性接受表格数据,`TableColumn` 组件通过 `prop` 和 `label` 属性分别指定数据字段和列名。 4. 最后,在组件中导出 `render` 函数: ```javascript export default { name: 'MyTable', data() { return { tableData: [ { name: 'John', age: 20, gender: 'Male' }, { name: 'Mary', age: 25, gender: 'Female' }, { name: 'Tom', age: 30, gender: 'Male' }, ], }; }, render() { // ... }, }; ``` 在上述代码中,`tableData` 是表格数据,可以通过 `data` 属性传递给 `Table` 组件。 ### 回答2: 在Vue中,可以使用`v-table`组件和render函数来渲染table。 首先,需要在Vue组件中导入`Vue`和`v-table`组件。可以在项目的入口文件或需要使用table的组件中引入。 ``` import Vue from 'vue' import VTable from 'v-table' Vue.use(VTable) ``` 然后,在模板中使用`v-table`组件来渲染table。可以设置表格的列和数据。 ``` <template> <v-table :columns="columns" :data="data"></v-table> </template> ``` 在Vue组件的data属性中定义表格的列和数据。 ``` export default { data() { return { columns: [ { title: '姓名', key: 'name' }, { title: '年龄', key: 'age' }, { title: '性别', key: 'gender' } ], data: [ { name: '张三', age: 18, gender: '男' }, { name: '李四', age: 22, gender: '女' }, { name: '王五', age: 25, gender: '男' } ] } } } ``` 最后,使用render函数渲染`v-table`组件。可以将模板中的`<v-table>`替换为`<div>`,然后在render函数中返回渲染的内容。 ``` export default { render(h) { return h('div', [ h(VTable, { props: { columns: this.columns, data: this.data } }) ]) } } ``` 通过上述步骤,就可以使用render函数渲染table。在表格中展示指定的列和数据,实现表格的渲染和展示。 ### 回答3: 在Vue中使用`table_vue`组件,可以使用render函数来渲染table。 首先,需要在Vue组件中导入`table_vue`组件。可以使用以下代码进行导入: ```javascript import table_vue from './table_vue.vue'; ``` 然后,在Vue组件的`render`函数中,使用`h`函数来创建`table_vue`组件的实例并渲染。可以使用以下代码示例: ```javascript render: function(h){ return h(table_vue); } ``` 在这个示例中,`h`函数接受一个组件选项对象或者组件构造函数作为参数,并返回一个VNode节点。通过调用`h(table_vue)`,`table_vue`组件会被实例化,并返回一个VNode节点用于渲染。 最后,将这个渲染函数添加到Vue组件的`render`选项中,即可在页面中渲染`table_vue`组件。 需要注意的是,使用render函数渲染组件时,是无法直接使用`template`属性的,需要使用`render`函数来动态生成DOM结构。这种方式更加灵活,可以根据需要动态创建组件和组件间的关系。 以上是使用render函数来渲染`table_vue`组件的方法。希望对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值