zoukankan      html  css  js  c++  java
  • vue.js 父组件如何触发子组件中的方法

    组件

    什么是组件?

    组件 (Component) 是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素,封装可重用的代码。在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能。在有些情况下,组件也可以表现为用 is 特性进行了扩展的原生 HTML 元素。

    所有的 Vue 组件同时也都是 Vue 的实例,所以可接受相同的选项对象 (除了一些根级特有的选项) 并提供相同的生命周期钩子。

    使用组件

    示例:

      子组件:

    <template>
      <div>
        child
      </div>
    </template>
     
    <script>
      export default {
        name: "child",
        props: "someprops",
        methods: {
          parentHandleclick(e) {
            console.log(e)
          }
        }
      }
    </script>

      组件:

    <template>
      <div>
        <button @click="clickParent">点击</button>
        <child ref="mychild"></child>
      </div>
    </template>
     
    <script>
      import Child from './child';
      export default {
        name: "parent",
        components: {
          child: Child
        },
        methods: {
          clickParent() {
            this.$refs.mychild.parentHandleclick("嘿嘿嘿");
          }
        }
      }
    </script>

    注意:

       1、在子组件中:<div></div>是必须要存在的 

      2、在父组件中:首先要引入子组件 import Child from './child';

        3、 <child ref="mychild"></child>是在父组件中为子组件添加一个占位,ref="mychild"是子组件在父组件中的名字

        4、父组件中 components: {  是声明子组件在父组件中的名字

           5、在父组件的方法中调用子组件的方法,很重要   this.$refs.mychild.parentHandleclick("嘿嘿嘿");

  • 相关阅读:
    八数码难题 (codevs 1225)题解
    小木棍 (codevs 3498)题解
    sliding windows (poj 2823) 题解
    集合删数 (vijos 1545) 题解
    合并果子 (codevs 1063) 题解
    等价表达式 (codevs 1107)题解
    生理周期 (poj 1006) 题解
    区间 (vijos 1439) 题解
    区间覆盖问题 题解
    种树 (codevs 1653) 题解
  • 原文地址:https://www.cnblogs.com/mophy/p/8590291.html
Copyright © 2011-2022 走看看