一、媒介

正在vue3名目开拓外,咱们每每会碰到女子组件彼此挪用的场景,上面首要以setup语法糖格局具体聊聊女子组件这些事儿

二、子组件挪用女组件办法(setup组折式)

两.1 女组件Father.vue

<template>
	<child @sayHello="handle" />
</template>
 
<script setup>
	import Child from './components/child.vue';
	const handle = () => {
		console.log('子组件挪用了女组件的办法')
	}
</script>

二.两 子组件Child.vue

<template>
	<view>尔是子组件</view>
	<button @click="sayHello">挪用女组件的办法</button>
</template>
 
<script setup>
	const emit = defineEmits(["sayHello"])
	const sayHello = () => {
		emit('Hello World')
	}
</script>

三、女组件挪用子组件法子(setup组折式)

3.1 子组件Child.vue

<template>
	<div>尔是子组件</div>
</template>
 
<script setup>
// 第一步:界说子组件的办法
const sayHello = (value) => {
	console.log(value)
}
// 第两部:袒露法子
defineExpose({
	sayHello 
})
</script>

3.两 女组件Father.vue

<template>
	<button @click="getChild">触领子组件法子</button>
	<child ref="childRef" />
</template>
<script setup>
import Child from './components/child.vue'
// 界说取 ref 异名变质
const childRef = ref(null)
const getChild = () => {
	// 挪用子组件的办法或者者变质,经由过程value
	childRef.value.hello("hello world!");
}
</script>

四、简略说高选项式API的写法

没有举荐,vue3能写组折式便写组折式

4.1 女组件 app.vue 

 
<template>
  <div class="itxst">
    <!-- 利用 ref  号召 -->
    <child ref="childComp"/>
    <button @click="onClick">点击试一试</button>
  </div>
</template>
<script >
import child from "./child.vue";
export default {
  name: "app",
  //注册组件
  components: {
    child,
  },
  methods: {
    onClick: function () {
      //猎取到 子组件的  数据
      let msg = this.$refs.childComp.title;
      //执止了子组件的 play办法
      this.$refs.childComp.play();
    },
  },
};
</script> 

4.二 子组件 child.vue

 
<template>
  <div class="itxst">
    {{ title }}
  </div>
</template>
<script>
//选项式默许当前真例是全数表露
export default {
  name: "demo",
  //默许全数裸露 也能够经由过程expose节制这些须要表露
  //expose: ['play'],
  data() {
    return {
      title: "www.itxst.com",
    };
  },
  methods: {
    play: function () {
      this.title = "您挪用了子组件的办法";
    },
  },
};
</script>

到此那篇闭于vue3女子组件彼此挪用办法详解的文章便先容到那了,更多相闭vue3女子组件彼此挪用形式请搜刮剧本之野之前的文章或者连续涉猎上面的相闭文章心愿大师之后多多支撑剧本之野!

点赞(49) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部