// 子组件
export default defineComponent({
  props: {
    collapsed: {
      type: Boolean,
    },
  },
  components: { MenuFoldOutlined, MenuUnfoldOutlined },
  setup(props, { emit }) {
    const store = useStore();
    
    // 必须用computed包装一层而且需设置get和set
    const collapsed = computed({
      get: () => props.collapsed,
      set: (value) => emit("update:collapsed", value),
    });
    const triggerClick = () => {
      // 直接改变值
      collapsed.value = !collapsed.value;
    };
    return {
      triggerClick,
      collapsed,
    };
  },
});

// 父组件
<parent-component v-model:collapsed="collapsed"></parent-component>

Logo

前往低代码交流专区

更多推荐