學習vue第十九節,父組件將方法傳遞給子組件


 

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script src="lib/vue-2.4.0.js" type="text/javascript" charset="utf-8"></script>
    </head>
    <body>
        
        <div id="app">
            <!-- 父組件可以通過事件綁定的形式,傳遞給子組件的數據(v-on 事件綁定縮寫 @ ) -->
            <com1 v-on:parentshow='show'></com1>
            <p>{{childmsg}}</p>
        </div>
        <template id="temp">
            <div>
                <h2>我是模板內容!</h2>
                <button type="button" @click="cl">dianji</button>
            </div>
        </template>
        
        <script type="text/javascript">
            
            // 定義一個模板,組件中的components 直接調用就可以了
            var com1={
                template:'#temp',
                data(){
                    return {
                        msg:{name:"張三",old:16}
                    }
                },
                methods:{
                    cl(){
                        // $emit ,調用觸發方法,可以傳多個參數,或自己的屬性
                        this.$emit('parentshow',123,this.msg)
                    }
                }
            }
            
            var vm=new Vue({
                el:'#app',
                data:{
                    msg:"我是一個父組件屬性!!",
                    childmsg:""
                },
                methods:{
                    show(data,data2){
                        console.log("父組件被調用啦!"+data+data2.name+data2.old)
                        // 將子組件的值,賦值給父組件的屬性,相當於父組件調用子組件的內容
                        this.childmsg=data2
                    }
                    
                },
                components:{                        
                    // 調用屬性
                    com1
                    
                }
                
            })
            
            
        </script>
    </body>
</html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM