vue2 组件相关语法

77 阅读1分钟
  1. 组件相关语法
  • 基本概念:组件的基本给概念:就是把一个大的功能,拆分成一个个子组件。组件是页面中的一部分。
  • 全局组件 特点:全局组件只要定义,处处可以使用,性能不高,但是使用起来简单。 组件具备复用性,在一个页面里,可以使用多次。 定义方法:Vue.component('组件名',组件)
  • 局部组件 局部组件的使用需要进行注册:例如在父组件里:components:{xxx:xxx} PS:为了和普通变量区分,建议组件首字母进行大写。
  • 组件传值父传子 父组件中-属性传值 子组件中-props接收 校验 校验方法:props: { content: { type: String }}
  1. 校验字符串
  •   	可校验类型
      		String
      		Number
      		Boolean
      		Array
      		Object
      		Date
      		Function
    
  •   	非空校验
      		required:true
    
  •   	默认值
      		default: xxx
      	validator方法校验
      		validator: function(value){ return value<1000 }  
                 参数必须小于1000
    
  • 组件传值子传父
  •   单向数据流
      	子组件可以使用父组件传递过来的数据,但是绝对不能修改传递过来的数据。
      this.$emit('事件','参数')方法
      	子组件向父组件传递方法,从而改变父组件里的变量
      	<div @自定义事件="handleXxx" >xxx</div>
    
  1. slot插槽
  •   概念:子组件使用 <slot></slot> 接收父组件传过来的HTML结构。
    
  •   基础语法:
      	父组件
      		<myComp><div></div></myComp>
      	子组件
      		<slot></slot>
      	默认值
      		<slot>default value</slot>
    
  •   具名插槽
      	概念:一个组件里,可以设置多个插槽,然后在父组件里可以写多个<template>来填充这些插槽
      	基础语法
      		父组件
      			基础写法:<template v-slot:header>
      			简单写法:<template #header>
      		子组件
      			<slot name="header">
    
  •   作用域插槽
      	作用域插槽相当于插槽届的数据子传父,父组件决定子组件输出方式。
    
  • 动态组件 概念:根据数据的编号,结合compoent 这个标签,来随时动态切换组件的显示 基础语法: 保持状态: 经常和动态组件一起使用