Vue(4)| 青训营笔记

51 阅读1分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 16 天

vue组件

vue组件

vue是一个支持组件化开发的前端框架。规定组件的后缀名是.vue.组件是对UI结构的复用

vue组件的三个组成部分

每个.vue 组件都由3部分构成,分别是:

  • template -> 组件的模板结构
  • script -> 组件的JavaScript 行为
  • style -> 组件的样式
默认导出:export default{ }

注意:①.vue组件中的data不能指向对象,因为组件中的data必须是一个函数。所以要写成函数形式:data(){ return xxxxxx}

②template里面只能有一个根元素

启用less语法 

<style lang="less">

组件之间的父子关系

组件封装好之后,彼此之间是相互独立的,不存在父子关系。在使用组件的时候,根据比才的嵌套关系,形成父子关系、兄弟关系

使用组件的三个步骤

①用import语法导入需要的组件——②使用component节点注册组件——以标签形式使用刚才注册的组件(第一个图在script中 )

扩:配置path.Autocomplete下path.Autocomplete——点击右下角小齿轮——扩展设置——右上角打开设置——粘贴

image.png

注意:要直接定位到项目的文件夹打开,不能打开包含多个项目的文件夹

通过components注册的是私有子组件

如组件A中注册F,F只能用在组件A中,不能用组件B中

扩:安装Vuter——输入<,选择第一个,回车可以快速生成模板 image.png

组件的props

props是组件的自定义属性。因为组件使用的时候,各个组件使用它,但是又想有一些不一样,所以此时我嫩采用props。

语法格式

image.png

例如:
props['init']
组件使用时:<count init="*****"></count>
//像id,class是系统自己就有的属性,而init没有,所以叫自定义属性

注意!!!:init里面拿到的是字符串,可以结合v-bind(:)可以转化为数字型——:init="xxx"

props是只读的!!,程序员不能直接修改props的值

修改方法:要想修改props的值,可以把props的值转存到data中,

image.png

props的type类型

image.png

props的required必填项

增添了required:true之后,在标签里面没有传就是错的。例如init里面增添,标签会报错,而不会报错

组件之间的样式冲突问题

加<style  scoped> 以后写样式都最好加上

使用deep修改组件样式

使用例:/deep/ h5。