一、什么是组件化开发
组件化开发指的是:根据封装的思想,把页面上可重用的UI结构封装为组件,从而方便项目的开发和维护。
二、vue中的组件化开发
vue是一个支持组件化开发的前端框架
vue中规定:组件的后缀名是.vue,之前接触到的App.vue文件本质上就是一个vue组件。
三、 组件的三个组成部分
每个.vue组件都由3部分构成,分别是:
template->组件的模版结构
script->组件的Javascript行为
style->组件的样式
案例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
| <template>
<div class="text-box">
<h3>这是用户自定义的Test.vue --- {{ username }}</h3>
</div>
</template>
<script>
export default {
data() {
return {
username: 'zs';
}
}
}
</script>
<style>
.text-box {
background-color: pink;
}
</style>
注意:.vue组件中的data不能像之前一样,指向一个对象,必须是一个函数。
**3.1 组件的方法**
<template>
<div class="text-box">
<h3>这是用户自定义的Test.vue --- {{ username }}</h3>
<button @click="changename">变更名称</button>
</div>
</template>
<script>
export default {
data() {
return {
username: 'zs'
}
},
methods: {
changename() {
this.username = 'ab';
}
},
watch: {},
computed: {},
filters: {}
}
</script>
<style>
.text-box {
background-color: pink;
}
</style>
|
3.2 开启Less
八、利用/deep/修改第三方组件样式
当我们引入Vant.js中的复用组件时,如果我们想修改该复用组件,就可以利用/deep/
在template中:
主要按钮
在css中:
九、.vue是如何被识别的?
在package.json中有个叫”vue-template-compiler”的组件,会将.vue转化为js代码。
在主页面中,我们能看到这段注入代码:

其中的app.js就包含了所有.vue组件。