Vue学习教程-18Vue单文件组件

文章目录


前言

Vue 单文件组件(又名 *.vue 文件,缩写为 SFC )是一种特殊的文件格式,它允许将 Vue 组件的模板逻辑 样式封装在单个文件中。组件最大的优势就是可复用性


一、单文件组件的构成

vue组件基本包括以下几个方面:

  1. 模板页面
  2. js模块
  3. 样式
html 复制代码
<!--模板 -->
<template>
    <h3>单文件组件</h3>
</template>
<!--js模块 -->
<script>
export default {
    name:"MyComponent"
}
</script>
<!--样式 -->
<style scoped>
h3{
    color: red;
}
</style>

二、组件引用

第一步:导入组件 import MyComponentVue from ./components/MyComponent.vue'

第二步:注册组件 components: { MyComponentVue }

第三步:引用组件标签 <MyComponentVue />

三、组件的应用举例

1.组件实例

定义两个组件 schoo.vue和student.vue

school.vue

html 复制代码
<template>
	<!-- 组件的结果 -->
	<div class="demo">
		<h2>学校名称:{{name}}</h2>
		<h2>学校地址:{{address}}</h2>
		<button @click="showName">点我提示学校名</button>	
	</div>
</template>

<script>
	//组件的交互
	 export default {
		name:'School',
		data(){
			return {
				name:'vue学院',
				address:'上海黄浦区'
			}
		},
		methods: {
			showName(){
				alert(this.name)
			}
		},
	}
</script>

<!-- 组件的样式 -->
<style>
	.demo{
		background-color: orange;
	}
</style>

student.vue

html 复制代码
<template>
	<div>
		<h2>学生姓名:{{name}}</h2>
		<h2>学生年龄:{{age}}</h2>
	</div>
</template>

<script>
	 export default {
		name:'Student',
		data(){
			return {
				name:'张三',
				age:18
			}
		}
	}
</script>

在根组件App.vue 组件中,

①导入import组件

②注册组件

③引用组件标签

App.vue

c 复制代码
<template>
	<div>
		<!-- 引用组件标签 -->
		<School></School>
		<Student></Student>
	</div>
</template>

<script>
	// 导入组件
	import School from './School.vue'
	import Student from './Student.vue'

	export default {
		name:'App',
		// 注册组件
		components:{
			School,
			Student
		}
	}
</script>

2.显示结果


相关推荐
老华带你飞15 分钟前
建筑材料管理|基于springboot 建筑材料管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习·spring
Gomiko30 分钟前
JavaScript DOM 原生部分(二):元素内容修改
开发语言·javascript·ecmascript
一招定胜负31 分钟前
网络爬虫(第三部)
前端·javascript·爬虫
Data_agent39 分钟前
实战:用Splash搞定JavaScript密集型网页渲染
开发语言·javascript·ecmascript
L.fountain1 小时前
图像自回归生成(Auto-regressive image generation)实战学习(一)
人工智能·深度学习·学习·计算机视觉·图像自回归
半山烟雨半山青1 小时前
微信内容emoji表情包编辑器 + vue3 + ts + WrchatEmogi Editor
前端·javascript·vue.js
码途潇潇1 小时前
Vue 事件机制全面解析:原生事件、自定义事件与 DOM 冒泡完全讲透
前端·javascript
TL滕1 小时前
从0开始学算法——第十八天(分治算法练习)
笔记·学习·算法
_Kayo_1 小时前
TypeScript 学习笔记2
前端·javascript·typescript
ss2731 小时前
SpringBoot+vue养老院运营管理系统
vue.js·spring boot·后端