先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
正文
npm install --save pubsub-js
2.以实例说明pubsub的用法
-
在上图中,我们头部header需要向后台发送关键字,后台根据得到的关键字进行相应的操作,返回项目需要的数据,main组件就是需要利用返回后台的数据据,进行页面的渲染(这要明白,发送ajax请求必然是在main组件中,header组件的作用是将关键字传给main组件,卖弄组件向后台发送ajax请求,返回数据,再进一步渲染)
-
因此,这便涉及到组件之间的通信,pubsub-JS就是用来实现组件之间的通信的
-
由于header与mian的关系是兄弟关系,若使用props属性,需要借助父组件来实现,pubsub(也是我们所说的订阅消息与发布消息)跨越组件之间的关系进行通信。
-
因此我们在header中点击搜索时会通知main组件向后台发送ajax请求,因此在header中发布消息(触发),在main中订阅消息(监听)
2.1具体代码如下:
- 其中,search点击时,按钮的点击回调函数中去发布消息
发布消息的方法是PubSub.publish(),需要通过提供两个参数,参数一为”发布的消息名“,第二个参数是搜索框中输入的关键字”searchName“参数,在main组件中订阅消息是便可以接收到该参数,进而向后台发送ajax请求;
- 在main组件的生命周期函数mounted(页面加载完成时)订阅消息,订阅消息时PubSub.subscribe()方法,这里接收两个参数,”发布消息名“,”事件监听函数“,这里的事件监听函数需要两个参数:一个时msg(发布的消息名,无用),一个时searchName(发布者传来的参数),我们在事件监听里面发送ajax请求,更新页面
在main组件的代码如下
全部实现代码如下:
- header.vue组件的相关代码
Search GitHub Users
<input type=“button” value=“Search” class=“btn btn-primary” placeholder=“请输入 github 用户名” @click=“search”>
- main组件的相关代码
请输入搜索用户的名称
loading
{{errormsg}}
{{user.name}}