当前位置: 首页 > news >正文

广东省建设信息港网站WordPress手机缩略图设置

广东省建设信息港网站,WordPress手机缩略图设置,凡科建站代理平台,影楼网站模版PubSubJS库介绍 如果你想在React中使用第三方库来实现Pub/Sub机制#xff0c;PubSubJS是一个不错的选择。它是一个轻量级的库#xff0c;可以在浏览器和Node.js环境中使用。 PubSubJS提供了一个简单的API#xff0c;可以让你在应用程序中订阅和发布消息。你可以使用npm来安…PubSubJS库介绍 如果你想在React中使用第三方库来实现Pub/Sub机制PubSubJS是一个不错的选择。它是一个轻量级的库可以在浏览器和Node.js环境中使用。 PubSubJS提供了一个简单的API可以让你在应用程序中订阅和发布消息。你可以使用npm来安装它 npm install pubsub-js1-引入使用 import PubSub from pubsub-js2-首先订阅消息 PubSub.subscribe(List,function(msg, data){ console.log(msg, data)})用于接收发布的信息。 3-发布消息 PubSub.publish(List,data)4-取消订阅消息 PubSub.unsubscribe(this.token)案例使用 现在有一个页面有两个兄弟组件 Search组件获取输入的关键字然后交给List组件去网络请求。List组件展示github的用户列表 1-App组件代码 import React, { Component } from react import Search from ./components/Search import List from ./components/Listexport default class App extends Component {render() {return (div classNamecontainerSearch/List//div)} }2-Search组件代码 import React, { Component } from react import PubSubJs from pubsub-jsexport default class Search extends Component {searchHandle () {const {KeyVal:{value}} thisPubSubJs.publish(getSearchVal,value)}render() {return (section classNamejumbotronh3 classNamejumbotron-headingSearch Github Users/h3divinput ref{cthis.KeyVal c} typetext placeholder关键字/button onClick{this.searchHandle}Search/button/div/section)} }3-List组件代码 import React, { Component } from react import PubSubJs from pubsub-js import axios from axios import ./index.css export default class List extends Component {state {users: [],isFirst: true,isLoading: false,err: ,}getSearchFunc (msg, data) {console.log(接收的信息, data)this.setState({ users: [], isFirst: false, isLoading: true })axios.get(https://api.github.com/search/users?q${data}).then((res) {this.setState({ users: res.data.items, isFirst: false, isLoading: false })console.log(请求成功了, res.data)},(err) {console.log(请求失败了, err)this.setState({isFirst: false, isLoading: false,err:err.message })}).catch(() {})}componentDidMount() {this.token PubSubJs.subscribe(getSearchVal, this.getSearchFunc)}componentWillUnmount() {PubSubJs.unsubscribe(this.token)}render() {const { users, isFirst, isLoading, err } this.statereturn (div classNamerow{isFirst ? (h2欢迎搜索/h2) : isLoading ? (h2Loading.../h2) : err ? (h3{err}/h3) : (users.map((userObj) {return (div classNamecard key{userObj.id}a href{userObj.html_url} target_blank relnoreferrerimgalt头像src{userObj.avatar_url}style{{ width: 100px }}//ap classNamecard-text{userObj.login}/p/div)}))}/div)} } 4-效果展示 总结 1- 设计状态时要考虑全面例如有网络请求的时候要考虑网络延迟和请求失败的状态处理。 2- ES6小知识点解构赋值 重命名 let obj {a:{b:1}} const { a } obj // 传统的解构赋值 const { a:{b} } obj // 连续的解构赋值 const { a:{b:value} } obj // 连续解构赋值 重命名3- 消息订阅与发布机制 I. 先订阅再发布 一种隔空对话的感觉 II. 适用于任意组件的通信 III. 要在组件componentWillUnmount生命钩子中取消订阅 4- 扩展fetch发送请求关注分离的设计思想 async func () {try {const res await fetch(url)const data await res.json()console.log(data)} catch(error) {console.log(error)} }
http://www.w-s-a.com/news/171164/

相关文章:

  • 优秀网站主题平顶山专业做网站公司
  • wordpress返回顶部插件wordpress站群seo
  • 企业网站建设报价表百度竞价托管哪家好
  • 织梦网站首页打开慢淄博网站推广那家好
  • 苏州高端网站建设kgwl互动网站建设的主页
  • 宿州网站建设哪家公司好个人网站制作方法
  • 网站正能量晚上在线观看视频站长之家关键词挖掘工具
  • 建设网站怎么判断是电脑还是手机仿租号网站源码网站开发
  • seo百度网站排名软件重庆巫山网站设计公司
  • 搭建视频播放网站网站排名诊断
  • 网站域名注册网站centos做网站服务器
  • 网站服务器共享的 vpsh5页面制作软件电脑版
  • 免费手机网站申请上海网站建设设计公司哪家好
  • 站长工具大全企业网上书店网站建设设计
  • 做网站的专业公司公司网站是做的谷歌的
  • 做网站前期工作wordpress图片并排
  • 免费注册网站哪个好wordpress评论修改
  • 合肥模板网站建设软件赤峰公司网站建设
  • 毕业设计都是做网站吗深圳网站制作企业邮箱
  • 网站排名 优帮云小规模公司简介怎么写
  • 那个做头像的网站好选择手机网站建设
  • 设计一个网站花多少时间做视频网站适合用什么服务器
  • asp网站开发环境订单系统单页面网站怎么做
  • 山东网站建设都有那些企业推广策略
  • 网站开发文档是什么概念衣服销售网站建设规划书范文
  • 中国建筑装饰网官网企业网站设计优化公司
  • 南海建设工程交易中心网站c2c交易平台有哪些?
  • 有没有专业做网站架构图的软件番禺建设网站哪个好
  • 建立网站第一步整站seo优化公司
  • php网站开发文章管理系统wordpress 评论 顶踩 心 插件