分析脚手架、ref、props

src中包含main.js、App.vue、components文件夹
  1. main.js是程序的入口,
//引入Vue
import Vue from 'vue'
//引入App
import App from './App.vue'
//关闭Vue的生产提示
Vue.config.productionTip=false
//创建vm
new Vue({
	el:'#app',
	render:h=>h(App) //实质:生成template模板
})
  1. components文件夹中写的就是各种组件,例如在components文件夹下创建一个school.vue
<template>
	<div>
		<h2>x学校名称{{name}}</h2>
	</div>
</template>

<script>
	export default{
		name:'school',
		data(){
			name:' XAUAT'
		}
	}
</script>
<style>
</style>
  1. App.vue的作用是集合components中的组件
<template>
//3、使用,自动调用new VueComponent()
	<school></school>
</template>

<script>
//1、先引入school组件
import school from './components/school.vue'
	export default{
		name:'app',
		//2、注册
		components:{
			school
		}
	}
</script>

ref属性

1、 被用来给元素或者子组件引用注册信息(HTML原生属性id的替代者)
2、 用在html标签上获取的是真实的DOM元素,用在组件标签上获取的是组件的实例对象(new VueComponent())
3、使用方式

<h2 ref='xx'></h2>
<school ref='xx'></school>

//获取:
this.$refs.xx
props属性

1、功能:让组件接收外部传过来的数据
2、使用:

//上面的school标签可改为
<school name="a" address="b" tel="c"></school>
//这儿传值必须用引号,所以都是String类型,如果要传数值,给前面加冒号 :age="19",把后面的内容按表达式来处理,不加冒号,就按字符串字面量来处理

//在school.vue中,props与data平级
//1、 简单接收
props:['name','address','tel']
//2、限制类型
props:{
	name:String,
	address:String,
	tel:Number
}
//3、更多限制
props:{
	name:{
		type:String,
		required:true, //必填
	},
	address:{
		type:String,
		required:true
	},
	tel:{
		type:Number,
		default:886666 //默认值
	}
}

props是只读的,Vue底层会监视你对props的修改,若修改,会发出警告,如果必须要修改,就把props中的内容复制到data中一份,对data中的数据进行修改

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值