• 父组件主动获取子组件的数据和方法 和 子组件主动获取父组件的数据和方法


    <template>
        <!-- 所有的内容要被根节点包含起来 -->
        <div id="home">
        
            <v-header ref="header"></v-header>
    
            <hr>
             首页组件   
    
             <button @click="getChildData()">获取子组件的数据和方法</button>
    
        </div>
    
    </template>
    
    
    <script>
    
    
    /*
    父组件给子组件传值
    
        1.父组件调用子组件的时候 绑定动态属性
            <v-header :title="title"></v-header>
    
        2、在子组件里面通过 props接收父组件传过来的数据
            props:['title']
    
    
    
            props:{
    
                'title':String      
            }
    
        3.直接在子组件里面使用
    
    
    
    父组件主动获取子组件的数据和方法:
    
        1.调用子组件的时候定义一个ref
    
            <v-header ref="header"></v-header>
    
        2.在父组件里面通过
    
            this.$refs.header.属性
    
            this.$refs.header.方法
    
    
    
    
    
    子组件主动获取父组件的数据和方法:  
    
    
            this.$parent.数据
    
            this.$parent.方法
    
    
    
    */
    
        import Header from './Header.vue';
    
        export default{
            data(){
                return {               
                   msg:'我是一个home组件',
                   title:'首页111'
                }
            },
            components:{
    
                'v-header':Header
            },
            methods:{
    
                run(){
    
                    alert('我是Home组件的run方法');
                },
                getChildData(){
    
                    //父组件主动获取子组件的数据和方法:
                    // alert(this.$refs.header.msg);
    
                    this.$refs.header.run();
                }
            }
    
    
        }
    
    </script>
    
    <style lang="scss" scoped>
    
        /*css  局部作用域  scoped*/
    
        h2{
    
            color:red
        }
    
        
    </style>
    <template>
    
    
        <div>
        
            <h2>我是头部组件</h2>
    
          
              <button @click="getParentData()">获取子组件的数据和方法</button>
    
           
        </div>
    </template>
    
    
    
    
    <script>
        
    export default{
    
    
        data(){
    
            return{
                msg:'子组件的msg'
            }
        },
        methods:{
           
                run(){
    
                    alert('我是子组件的run方法')
                },
                getParentData(){
    
    
                    /*
                    子组件主动获取父组件的数据和方法:  
    
    
                    this.$parent.数据
    
                    this.$parent.方法
    
                    
                    */
                    // alert(this.$parent.msg);
    
                    //this.$parent.run();
                }
        }
        
    }
    
    </script>
  • 相关阅读:
    Android Studio 插件(不定期更新)
    Spring 之 @ComponentScan以及mock Spring MVC
    Spring MVC 之传递模型数据到视图中
    开发笔记
    最小可用 Spring MVC 配置
    Spring 之定义切面尝试(基于 XML)
    Spring 之定义切面尝试(基于注解)
    Spring 之高级装配
    Spring 之混合配置
    Spring 之通过 XML 装配 bean
  • 原文地址:https://www.cnblogs.com/loaderman/p/11058185.html
Copyright © 2020-2023  润新知