在在el-table中处理 el-table-column的一些自定义列的时候有时候不方便使用插槽,这时候可以用formatter函数的Vnode替代。
import { ElInput} from 'element-plus'
import { Search } from '@element-plus/icons-vue'
const formatter = (row, column) => {
if (column.property == 'warehouseLink') {
if (row.id == -1) {
return h(ElInput, {
modelValue: lineSearchQuery.value[column.property],
'onUpdate:modelValue': (value) => {
lineSearchQuery.value[column.property] = value;
},
'onKeyup': (event) => {
if (event.key === 'Enter') {
handleQuery();
}
},
'prefix-icon': Search,
style: 'width: 100%'
});
} else {
const storestr = row.warehouseLink?.map(item => item.warehouseName)
return storestr?.join('、')
}
}
}