【发布时间】:2021-06-04 20:26:23
【问题描述】:
如何创建对象属性reactive?
当我运行下面的代码时,导入的visible 不会更改为true。
导入对象的组件:
<template>
<div class="context">
<span v-if="visible"> test </span>
</div>
</template>
<script>
import { ContextManager } from "./utils.js";
import { ref } from "vue";
export default {
name: "context",
setup() {
const visible = ref(ContextManager.visible);
return { visible };
}
};
</script>
向对象添加数据的其他组件:
const openContext = (e) => {
e.preventDefault();
ContextManager.add({
el: e.target,
items: contextItems
},e );
};
ContextManager 对象:
import { reactive } from "vue";
export const ContextManager = reactive({
context: null,
visible: false,
add(context, e) {
this.visible = true;
}
});
【问题讨论】:
标签: javascript vue.js vue-component vuejs3 vue-reactivity