@cmstops/pro-compo
Version:
[物料平台文档中心](https://arco.design/docs/material/guide)
27 lines (26 loc) • 765 B
JavaScript
import { ref, computed } from "vue";
const useTableBatch = () => {
const hoverTarget = ref(null);
const isItemChecked = computed(() => (selectedData, item) => {
return selectedData.map((row) => row.id).includes(item.id);
});
const hoverBatchBox = computed(() => (selectedData, item) => {
return hoverTarget.value === item.id || isItemChecked.value(selectedData, item);
});
const tableCellMouseEnter = (record) => {
hoverTarget.value = record.id;
};
const tableCellMouseLeave = (record) => {
if (record.id === hoverTarget.value) {
hoverTarget.value = null;
}
};
return {
hoverTarget,
isItemChecked,
hoverBatchBox,
tableCellMouseEnter,
tableCellMouseLeave
};
};
export { useTableBatch as default };