watch 监听

Siona

watch 监听

1. 深度监听

<template>
    <div>
        <a-table :columns="columns"
                 :data-source="menuPermissionData"
                 :bordered="true"
        >
            <template #bodyCell="{column, record }">
                <template v-if="column.dataIndex === 'interface' && record.interface">
                    <a-checkbox-group v-model:value="record.checkedActionList" :options="record.interface" />
                </template>
            </template>
        </a-table>
    </div>
</template>
<script setup>
    import { ref, watch } from 'vue'
    const menuPermissionData = ref([])

    /* 监听多选框改变 */
    watch(() => menuPermissionData.value, value => {
        console.log(333, value)
    }, { deep: true }) // 深度监听
</script>

深度监听:

  • 使用 watch 监听 menuPermissionData.value 的变化,并添加 { deep: true } 选项来进行深度监听。这将确保监听到对象和数组内部的变化。
Last Updated 8/18/2024, 10:22:42 AM