重拾前端记忆,记录学习笔记,现在进入组件基础知识部分
组件允许我们将 UI 划分为独立的、可重用的部分,并且可以对每个部分进行单独的思考。在实际应用中,组件常常被组织成层层嵌套的树状结构。
Vue单文件组件(又名*.vue文件,缩写为SFC)是一种特殊的文件格式,它允许将Vue组件的模板、逻辑与样式封装在单个文件中
加载组件需要以下三步:
第一步:引入组件
第二步:挂载组件
第三步:显示组件
示例如下:
新建Vue文件:MyComponents
<template>
<h3>清风不渡h3>
template>
<script>
export default {
name : "MyComponents",
}
script>
<style>
h3{
color: yellowgreen;
}
style>
在App.vue中进行加载:
<template>
<img alt="Vue logo" src="./assets/logo.png">
<MyComponentsVue/>
<HelloWorld msg="Welcome to Your Vue.js App"/>
template>
<script>
import HelloWorld from './components/HelloWorld.vue'
// 第一步:引入组件
import MyComponentsVue from './components/MyComponents.vue';
export default {
name: 'App',
components: {
HelloWorld,
// 第二步:挂载组件
MyComponentsVue
}
}
script>
<style>
#app {
font-family: Avenir, Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
margin-top: 60px;
}
style>
结果如下:
被加载的组件可以被重用任意多次
值得注意的是,如果多个组件中含有同样式指向的标签时,他们的显示是相同的,例如:
上方的HelloWorld组件中也有一个h3标签,那么MyComponents组件中的style样式也同样适用于它:
<template>
<div class="hello">
<h3>这是hello world组件h3>
<input type="text" v-model="message">
<p>message is : {{ message }}p>
div>
template>
<script>
export default {
data() {
return {
message: ""
}
}
}
script>
<style>
style>
结果如下:
如果不需要这样,则需要在