一、props特性

  1. props:[‘content’],
  2. 如果只是简单的一种限制可以这么写
    注意:如果是数字,content前需要加 :
    	props:{
    		content:Number
    	},
    
  3. 几种一起 数字或字符串
    props:{
    	content:[Number,String]
    },
    
  4. 多种定义,限制
    props:{
    		content:{
    			type:String,				// 传值类型
    			required:true,				// 是否必填
    			default:'Default value',	// 默认值
    			validator:function (value) {// 满足要求返回true 否则返回 false,检查传入的值 value
    				return value.length > 5
    			}
    	},
    

二、非props特性:父组件传值,子组件不接

  1. 不写props:这种会报错
  2. 组件写死了,content就会出现在最外层的document标签中
    template:'<div>Hello</div>' -->  <div content="Hel">Hello</div>(编译后)
    
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>组件参数校验与非props特性</title>
	<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
</head>
<body>
	<div id="root">
		<child content='Hel'></child>
	</div>
	<script type="text/javascript">
		/* 组件参数校验:父组件往子组件进行传递一些数据时,子组件对这些数据进行的一些限制 | 约束 */
		Vue.component('child',{
			/* 一、props特性 1、props:['content'], 2、如果只是简单的一种限制可以这么写 注意:如果是数字,content前需要加 : props:{ content:Number }, 3、几种一起 数字或字符串 props:{ content:[Number,String] }, 4、多种定义,限制 props:{ content:{ type:String, // 传值类型 required:true, // 是否必填 default:'Default value', // 默认值 validator:function (value) {// 满足要求返回true 否则返回 false return value.length > 5 } } }, 二、非props特性:父组件传值,子组件不接 1、不写props:这种会报错 2、组件写死了,content就会出现在最外层的document标签中 template:'<div>Hello</div>' --> <div content="Hel">Hello</div> */
			
			template:'<div>Hello</div>'
		})
		var vm = new Vue({
			el:'#root',
		});
	</script>
</body>
</html>