props配置

功能:让组件接收外部传过来的数据

  1. 数据传递:
<Demo name="xxx">
  1. 接收数据:
方式一(只接收):
	props: ['name']
	
方式二(限制类型):
	props:{ 
		name: String
	}
方式三(限制类型、限制必要性、指定默认值):
	props:{
		name: {
			type: String, // 类型
			required: true, // 必要性
			default: '张三' // 默认值
		}
	}

备注:props是只读的,Vue底层会监测你对props的修改,如果进行了修改,就会发出警告,若业务需求确实需要修改,那么请复制props的内容到data中一份,然后去修改data中的数据。

例子

  • Student.vue
<template>
  <div>
      <h1>{{msg}}</h1>
      <h3>我的名字是:{{name}}</h3>
      <h3>我的年龄是:{{age}}</h3>
      <br>
  </div>
</template>

<script>
    export default {
        name: 'Student',
        data() {
            return {
                msg: "我是一个学生",
            }
        },
        props: ['name', 'age']
        /*
        props: {
            name: String,
            age: Number
        }
        props: {
            name: {
                type: String, //限制类型
                required: true, // 限制必要性
                default: '张三' // 指定默认值
            }
        }*/
        
    }
</script>

<style>

</style>
  • App.vue
<template>
  <div>
    <!-- 向组件传递数据 -->
    <Student  age="22"></Student>
    <Student name="Michale" age="32"></Student>
  </div>
</template>

<script>
  // 引入组件
  import Student from './components/Student.vue';

  export default {
    name: 'App',
    // 注册组件
    components: {
      Student,

    }
  }
</script>

<style scoped>

</style>

原文地址:http://www.cnblogs.com/keyongkang/p/16886673.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性