vue.js 将引用传递给没有代理的父级

vc6uscn9  于 2023-05-18  发布在  Vue.js
关注(0)|答案(1)|浏览(163)

在我的子vue组件中,我有这个引用对象,我发出给父组件:

const skuForm = ref({
    sku: '',
    oneTime: false,
    noDiscount: false,
    korean: false
});

const addSku = () => {
    emit('add', skuForm.value);
}

我想把普通的json对象发送给父组件。
这是我在我的父母组件中所做的:

<SKUForm :open="modal" @close="modal=false" @add="addSKU"></SKUForm>

<script setup>
const addSKU = (sku) => {
    console.log('RECEIVING SKU..');
    console.log(sku);

}

但是,接收到的json对象仍然包裹在代理周围。如何摆脱代理?

m3eecexj

m3eecexj1#

在Vue 3中,当您使用ref创建一个React对象时,它会返回一个围绕实际值的Proxy Package 器。要移除代理 Package 器,可以使用Vue的Composition API提供的toRaw函数。

import { toRaw } from 'vue'

const addSku = () => {
  emit('add', toRaw(skuForm.value));
};

相关问题