vue(父子组件的通信--父组件向子组件通信,及props的驼峰标识)

35 篇文章 0 订阅

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
		<style>
			
		</style>
        <script src="./vue.js"></script>
    </head>
    <body>
        <div id="root">
			<cpn v-bind:c-movies="movies" :cmessage="message"></cpn>  <!--如果这里去掉:cmessage="message",则cmessage为默认值default:"aaa"-->
        </div> 
			<!--//这里要写成:c-M(m)ovies="movies",因为下面props里面时驼峰命名法cMovies-->
		<template id="cpn">
			<div >
				<ul>
					<li v-for="item in cMovies">{{item}}</li>
				</ul>
				<h2>{{cmessage}}</h2>
			</div>
		</template>
		
        <script>
			const cpn={
				template:"#cpn",
//				props:['cmovies','cmessage'],
				props:{
					//1.类型限制
					//cmovies:Array,
					//2.提供默认值
					cmessage:{
						type:String,
						default:"aaa", //当没传这个变量时,默认为”aaa“
						required:true  //使该值必须传
					},
					//类型是对象或数组时,默认值必须是一个函数
					cMovies:{
						type:Array,
						default(){  //默认值
							return []
						}
					}
				},
				data(){
					return {}
				}
			}
            new Vue({
                el:"#root",
                data:{
					movies:["哪咤闹海","海王","海贼王"],
					message:"asd"
                },
				components:{
					cpn  //加强写法
				},
                methods:{
                   
                },
				computed:{	
					
				},
				filters:{   //过滤器
					
				}
            })
        </script>
    </body>
</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值