码迷,mamicode.com
首页 > 其他好文 > 详细

vue自定义组件实现v-model双向绑定

时间:2020-06-17 18:12:30      阅读:100      评论:0      收藏:0      [点我收藏+]

标签:src   sse   style   nts   click   bin   methods   data   assets   

父级组件

<template>
  <div id="app">
    <button @click="clickme">click me</button>
    <img alt="Vue logo" src="./assets/logo.png" />
    <HelloWorld msg="Welcome to Your Vue.js App" v-model="show" />
  </div>
</template>

<script>
import HelloWorld from "./components/HelloWorld.vue";

export default {
  name: "App",
  data() {
    return {
      show: true
    };
  },
  components: {
    HelloWorld
  },
  methods: {
    clickme() {
      this.show = !this.show;
    }
  }
};
</script>

 

子组件

<template>
  <div class="hello" v-show="value">
    <h1>{{ msg }}</h1>
    <button @click="clickme">click child</button>
  </div>
</template>

<script>
export default {
  name: "HelloWorld",
  props: {
    msg: String,
    value: Boolean// 获取父级组件传递的value
  },
  updated() {},
  methods: {
    clickme() {
      const newval = !this.value;
      this.$emit("input", newval); //v-model实现的是v-bind:value 和v-on:input,这句更新父级组件的value
    }
  }
};
</script>

 

vue自定义组件实现v-model双向绑定

标签:src   sse   style   nts   click   bin   methods   data   assets   

原文地址:https://www.cnblogs.com/xbzhu/p/13153756.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!