uni-app组件父子页面传递参数Props属性字段类型讲解

南国老符 南国老符 最后更新于:2020-12-17 浏览:5234

pages/index/index.vue父页面代码如下:

<template>
	<view class="wrap">
		<!-- 引用组件 -->
		<navigation :bbb="bbb" :aaa="aaa" :ccc="ccc" :ddd="ddd"></navigation>
	</view>
</template>
<script>
import navigation from '../../components/navigation.vue';
export default {
		data() {
			return {
				// 字符串
				aaa:'classname',
				// 布尔型
				bbb:true,
				// 数值
				ccc:1,
				// 对象类型
				ddd:{abc:666,www:777}
			}
		},
		onLoad(p){},
                components:{
			navigation
		}
}


components/navigation.vue组件示例代码如下:

<template name="navigation">
	<view>
		<view v-if="bbb" :class="aaa">
			{{ccc}}
			{{ddd.abc}}
		</view>
	</view>
</template>
<script>
	export default {
		name:'navigation',
		data() {
			return {}
		},
		created(p){},
		// 父页面传递的属性参数
		props:{
			// 字符串
			aaa:{
				type:String
			},
			// 布尔型
			bbb:{
				type:Boolean
			},
			// 数值
			ccc:{
				type:Number
			},
			// 对象类型
			ddd:{
				type:Object
			},			
		},
		methods:{}
	}
</script>


下面是摘自网络的代码,供参考:

Vue.component('myComponent', {

  props: {

    // 基础类型检测 (`null` 意思是任何类型都可以)

    propA: Number,

    // 多种类型

    propB: [String, Number],

    // 必传且是字符串

    propC: {

      type: String,

      required: true

    },

    // 数字,有默认值

    propD: {

      type: Number,

      default: 100

    },

    // 数组/对象的默认值应当由一个工厂函数返回

    propE: {

      type: Object,

      default: function () {

        return { message: 'hello' }

      }

    },

    // 自定义验证函数

    propF: {

      validator: function (value) {

        return value > 10

      }

    }

  }

});


type 可以是下面原生构造器:

String

Number

Boolean

Function

Object

Array

Symbol

type 也可以是一个自定义构造器函数,使用 instanceof 检测。


// 自定义Person构造器

function Person(name, age) {

    this.name = name

    this.age = age

}

Vue.component('my-component', {

    template: `<div>名字: {{ person-prop.name }}, 年龄: {{ person-prop.age }} </div>`,

    props: {

      person-prop: {

        type: Person     // 指定类型

      }

    }

});

new Vue({

    el: '#app2',

    data: {

      person: 2        // 传入Number类型会报错

    }

});


点赞 (0)

收藏 (0)
转载请务必注明: 来源:《建站管家》https://www.df81.com/news/157.html

本站部分信息来源网络,如有侵权,请联系QQ:1062129401删除。

上一篇: 闲聊IT互联网创业项目趋势

下一篇: uniapp微信小程序真机调试时,提示fail to connect to wxagame.weixin.qq.com错误

请先登录后,再发表评论 ~ ~
发表评论
评论 (0)

发表帖子
广告位招租( ¥5 / 天 )
点击咨询
最新帖子

南国老符
2025-05-26 16:54
南国老符
2024-09-29 10:29
南国老符
2023-12-15 21:41
广告位招租( ¥5 / 天 )
点击咨询
最近评论

U
user1379
回复:版本号多少?
U
user1379
回复:新版本修复了,下载新版本即可
U
user1379
U
user1304
回复:默认没有这个功能,你可以自行二次开发后期可能会考虑在站群版本上加入此功能及商城功能
Y
yuanis90
回复:后台->语言->全局管理->模型管理->编辑->启用关键词内链即可
Y
yuanis90
回复:后台已经启用了,但是前台产品说明的关分键词还是没有自动链接到,
购买VIP
购买授权
余额充值
发表帖子
客服微信