Vue组件化、通过自定义指令子组件向父组件传递

news/2024/10/18 9:22:09/

1.如何安装Vue脚手架?

第一步(仅第一次执行):全局安装@vue/clinpm install -g @vue/cli
第二步:切换到你要创建项目的目录,然后使用命令创建项目vue create xxxx
第三步:启动项目npm run serve

2.脚手架结构

3.ref属性

4.props

配置项props功能:让组件接收外部传过来的数据
(1)传递数据<Demo name="xxx"/>(2)接收数据第一种方式(可接受):props:['name']第二种方式(限制类型):props:{name:Number}第三种方式(限制类型、限制必要性、指定默认值):props:{name:{type:String //类型required:true //必要性default:'老王' //默认值}}
备注:props是可读的,Vue底层会监测你对props的修改,如果进行了修改,就会发出警告,若业务需求确实需要修改,那么请复制props的内容到data中一份,然后去修改data中的数据

5.mixin(混入)

6.plugins插件

7.scoped样式

8.子组件如何向父组件传递数据?

1.通过父组件给子组件传递函数类型的props实现:子给父传递数据1.1父组件中绑定一个函数1.2子组件通过props来接收这个函数,再把子组件中的数据作为函数的参数,在合适的时候调用,就达到了将子组件的数据传到父组件的功能2.通过父组件给子组件绑定一个自定义事件实现子给父传递数据(第一种写法,使用@或v-on)2.1给父组件中的子组件标签绑定一个自定义指令,如 @atguigu="getStudentName"2.2给父组件定义方法 getStudentName2.3给子组件中的(点击)事件定制atguigu,如 this.$emit('atguigu',this.name)this.$refs.student(获取student组件的实例对象)
3.通过父组件给子组件绑定了一个自定义事件实现:子给父传递数据(第二种写法,使用ref)3.1给父组件中的子组件标签添加ref属性,如<Student ref="student"/>3.2给父组件定义方法getStudentName3.3给父组件添加mounted属性,如mounted(){this.$refs.student.$on('atguigu',this.getStudentName)}这种方式灵活性较高,例如mounted(){    //使用$once,只触发一次,我们也可以在标签里书写@click.oncesetInteval(()=>{this.$refs.student.$once('atguigu',this.getStudentName)},3000)}

9.解绑事件

当组件销毁后,它会拆卸身上所携带的监视属性,子组件,和监听事件,但是原生DOM不受影响

 

使用子组件向父组件传递数据的第三种方式时,如果直接把回调函数写在this.$refs.student.$on('atguigu',function(name,...params){

                              console.log(this)

})里,此时的this指向的是组件实例对象,即谁触发的事件,this指向的就是谁

如果像下面这种情况,在APP.vue中配置了getStudentName方法,this就指向的是APP.vue中的getStudentName

如果写成箭头函数,也可以解决这个问题,因为箭头函数没有自己的this

组件中如何想要用原生的事件,需要加上修饰符native


http://www.ppmy.cn/news/101856.html

相关文章

网络货运系统源码 网络货运平台源码,货运APP源码 货物运输管理源码

网络货运系统源码 网络货运平台源码&#xff0c;货运APP源码 货物运输管理源码 网络货运为无车承运人更名而来&#xff0c;网络货运平台的好处可以节省找车找货的时间与成本。根据国家对智慧物流行业的发展规划&#xff0c;及《网络平台道路货物运输经营管理办法》等相关法律法…

VB一个可以改变箭头方向的气泡提示

新建一个类名。名称为clsTip Option Explicit * 模块名称&#xff1a;clsTip.cls * 功能&#xff1a;一个可以改变箭头方向的气泡提示类 Private Type TOOLINFO cbSize As Long dwFlags As Long hwnd As Long dwID As Long rtRect(3) As Long hInst As Long lpszText As String…

【MLC】 TensorIR 练习

文章目录 前言TensorIR 练习TensorIR: 张量程序抽象案例研究练习 1&#xff1a;广播加法练习 2&#xff1a;二维卷积练习 3&#xff1a;变换批量矩阵乘法程序 总结 前言 这两天重新看了一下天奇的mlc课程文档&#xff0c;把里边儿的TensorIR 练习写了一下&#xff0c;顺便推广…

中低压母线室弧光保护装置在水电站的应用

摘要&#xff1a;本文介绍了电弧光保护在水电站的配置及应用&#xff0c;提供给相关人员参考。 关键词&#xff1a;水电站&#xff1b;开关柜&#xff1b;电弧光 0前言 电弧光是由于发生相间短路或接地短路时空气电离而形成的。在我国电力系统中开关柜内部电弧光故障时有发生…

华为OD机试真题 Java 实现【基站维修工程师】【2023Q1 200分】,附详细解题思路

一、题目描述 小王是一名基站维护工程师,负责某区域的基站维护。 某地方有n个基站(1<n<10),已知各基站之间的距离s(0<s<500),并且基站x到基站y的距离,与基站y到基站x的距离并不一定会相同。 小王从基站1出发,途径每个基站1次,然后返回基站1,需要请你…

【SonarQube】下载、安装、配置、使用介绍

文章目录 SonarQube安装运行使用root启动问题处理修改文件数限制JDK版本问题创建Project创建token扫描代码数据持久化在线文档 SonarQube安装 官网下载地址: http://www.sonarqube.org/downloads/9.9.1.69595下载地址: https://binaries.sonarsource.com/Distribution/sonarqu…

【大数据处理与可视化】六、数据可视化

【大数据处理与可视化】六、数据可视化 实验目的实验内容实验步骤一、案例——画图分析某年旅游景点数据1、河北省总面积和游客量位居前三的景点2、河北省旅游量的占比哪个最多&#xff0c;哪个最少。 实验小结 实验目的 1.能够详述常见图表的类型和特点。 2.能够熟练运用Matp…

携手高通,移远通信以全栈式车载产品实力重新定义汽车

5月25日至26日&#xff0c;2023高通汽车技术与合作峰会在苏州成功举办。 移远通信作为高通重要的长期战略合作伙伴&#xff0c;受邀参加此次峰会&#xff0c;并现场展示了支持5G/4G、C-V2X、算力、UWB、Wi-Fi、高精定位等领先技术的多款车规级模组、天线等产品&#xff0c;更有…