اجرای متد در کامپوننت فرزند از طریق والد در ویو جی اس

mohsen2 سال قبل
ارسال شده در
mohsen

برای دسترسی به کامپوننت فرزند در ویو جی اس می توانیم از اتریبیوت ref روی تک کامپوننت فرزند استفاده کنیم. برای این کار می توانیم بوسیله defineExpose در کامپوننت فرزند متد یا متغیرهایی که می خواهند در کامپوننت والد در دسترس باشند را اکسپورت کنیم.

      <script setup>
// Child component
// inner state of child component

// exposed methods and variables
defineExpose({
  test: () => {
    console.log('test called')
  }
})
</script>
    

سپس در کامپوننت والد با استفاده از ref می توانیم به متد یا متغیر های تعریف شده در کامپوننت فرزند دسترسی داشته باشیم.

      <template>
  <Child ref="child" />
</template>
<script setup>
import { onMounted } from 'vue'
const child = ref()

onMounted(() => {
  child.value.test() // call test method of child component
})
</script>
    
رای
0
ارسال نظر
مرتب سازی:
اولین نفری باشید که نظر می دهید!