Vue2.0 弹窗方法之一(父子传输方法)

使用$emit实现子组件 向父组件传输数值实现


第一步   在子组件 children.vue , methods 一个方法

	// html编辑
	<!-- 需要@click 实现vue内部方法 -->
	<div class="children" @click="openwindow()"></div>

	// js编辑
	<script>
		export default {
			methods: {
				openwindow () {
				this.$emit('setting')  // setting这个名字自己取, $emit(event , arg )
				console.log()
			}
		}
	</script>
	


第二步  在父组件App.vue中编辑


<template>  
	<div id="app">
		<!-- 这是弹窗组件 -->
		<!-- 弹窗组件里有个关闭按钮,传$emit('closewindows') -->
		<v-popwindow v-if="istrue" @closewindows="closewindows"></v-popwindow>
		<!-- 这是子组件 -->
		<!-- $emit从哪传出来就得到该组件标签接收,自己发自己收 -->
		<v-bottom @setting="openwindows" @onsale="opensale"></v-bottom>
	</div>
</template>

// js编辑
export default {
	data () {
		return {
			istrue: false
		}
	},
	methods: {
		openwindows () {  // 打开弹窗
			this.istrue = !this.istrue
			console.log(this.istrue)
		},
		closewindows () {  // 关闭弹窗
			this.istrue = !this.istrue
			console.log(this.istrue)
		},
	}
}


猜你喜欢

转载自blog.csdn.net/barcodeyu/article/details/80735970