• Vue中的组件通信


    这两天在学Vue,记录一下我认为比较重要的东西

    Vue中的组件通信:  

    我们可以分为3个步骤来:

    1.声明局部子组件,简称 "声子",

    2.挂载到dom树上面去,简称:"挂子"

    3.进行使用,简称:"用子"

    上面写的别人可能看不太明白,毕竟只是我的看法:

    <body>
        <div id="app">
    
        </div>
    </body>
    先写一个div,给它一个ID=app
    <script>
      var Vheard = {
        template: `
          <div>我是头部组件</div>
        `
      }
    
      //声子
      var App = {
        template: `
          <div>
            <Vheard />
            </div>
        `,
        components: {
          Vheard
        }
      }
      var vm = new Vue({
        el: "#app",
        data() {
          return {
    
          }
        },
        components: {
          //挂子
          App
        },
        //用子
        template: `
          <App />
        `
      });
    </script>

    父组件向子组件传递信息

    子组件向父组件传递信息

    <script>
        //孩子
        Vue.component('Child', {
            data() {
                return {
                    textProp: this.childData
                }
            },
            template: `
                <div>
                我是孩子
                <p>{{textProp}}</p>
                <input type='text' v-model='textProp'
                @input='childValue(textProp)' />
                </div>
                
            `,
            props: ['childData'],
            methods: {
                childValue(val) {
                    this.$emit('childHeard', val)
                }
            }
        })
    
    
        //父亲
        Vue.component('Parent', {
            data() {
                return {
                    msg: '加班好玩吗?'
                }
            },
            template: `
                <div>
                    我是父亲
                    <Child :childData='msg' @childHeard='childHeard' />
                </div>
            `,
            methods: {
                childHeard(val) {
                    console.log(val)
                }
            }
        })
    
        //声子
        var App = {
            template: `
                <div>
                    <Parent />
                </div>
            `
        }
    
        var vm = new Vue({
            el: '#app',
            data() {
                return {
    
                }
            },
            //用子
            components: {
                App
            },
            //挂子
            template: `
            <App />
            `
        })
    </script>
  • 相关阅读:
    unordered_set
    树的所有实现
    各类算法模板
    单链表全部实现(绝对史上最完整 附例题)
    求最长回文子串
    无重复的最长子串
    秋叶集
    1451. 重新排列句子中的单词
    152. 乘积最大子数组
    JVM总结的部分内容
  • 原文地址:https://www.cnblogs.com/a973692898/p/12683735.html
Copyright © 2020-2023  润新知