Web开发

首页 » 常识 » 常识 » web前端培训复盘30技术点满满干货
TUhjnbcbe - 2023/5/4 21:57:00

1.Vue系列

1.props

进阶图用到props主要是用来接收父组件传递而来的主面板数据,例如hasScale用于在父组件调用面板组件时,传递一个Boolean值告诉面板组件是否支持缩放。而progressData则是用来接收渲染面板的数据,要注意的是,父组件中的传递名称应该和子组件中的props中定义的名称一致。如下是关于props在进阶图中的应用。

props可以是数组或对象,用于接收来自父组件的数据。props可以是简单的数组,或者使用对象作为替代,对象允许配置高级选项,如类型检测、自定义验证和设置默认值。支持配置属性type:数据类型,default设置默认值,required是否必须,validator自定义验证函数。

main-panel:progressData="list"/main-panel

复制代码

props:{

//是否支持缩放

hasScale:{

type:Boolean,

default:false

},

//类型:只读(detail)或编辑(默认)

type:{

type:String,

default:

},

//主面板数据

progressData:{

type:Array,

default:function(){

return[]

}

}

},

复制代码

2.$emit

$emit用于向上派发事件并传递参数,通常配合props使用,以达到父子组件通信的目的。进阶图中是于父组件派发change事件,并传递this.bodyWidth,this.list两个参数。注意父组件在接收事件时应保持名称一致。

watch:{

list:{

deep:true,

handler(newVal,oldVal){

this.bodyWidth=this.list.length*+60+px

//派发事件

this.$emit(change,this.bodyWidth,this.list)

}

},

},

复制代码

--接收change事件--

main-panel

change="change"/main-panel

复制代码

3.ref

ref在Vue中用于绑定组件,可以通过this.refs[绑定名称]或this.refs[绑定名称]或this.refs[绑定名称]或this.refs.绑定名称来获取组件实例对象,这有时非常有用。例如,当我们想要在一个组件中调用其子组件的某个方法或属性时,可通过这种方式调用。

--使用ref绑定面板组件--

main-panelref="mainPanel"/main-panel

复制代码

4.watch

watch是vue中被常用的api之一,用于监听数据,可以监听data中的数据,也可以监听props中的数据。

watch观察Vue实例上的一个表达式或者一个函数计算结果的变化。回调函数得到的参数为新值和旧值。表达式只接受简单的键路径。对于更复杂的表达式,用一个函数取代。

进阶图中使用watch监听data中的面板数据list和props中的父组件传递下来的面板数据progressData。其中使用到了deep属性,表示是否进行深层次的内部值得监听。根据

1
查看完整版本: web前端培训复盘30技术点满满干货