Объект, переданный как prop, изменяется в родительском компоненте при внесении изменений в дочерний компонент

#vue.js #vue-composition-api

Вопрос:

Я новичок в vue.js и до сегодняшнего дня я думал, что реквизит связан в одну сторону. Но сегодня я понял, что если мы передаем объект в качестве реквизита, он передается по ссылке, поэтому изменения, которые мы вносим в дочерний компонент, распространяются обратно на родительский. То, что я на самом деле сделал, было примерно так:

const studentObj = ref(props.initialStudentObj)

А затем изменения, которые я внес studentObj в дочерний компонент, вернулись к родительскому, и initialStudentObj значение в родительском компоненте изменилось.

Я знаю, что изменение реквизита в дочерних компонентах является анти-шаблоном, поэтому я хочу знать, как это наиболее рекомендуется делать.