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

大型网站制作怎么样推广app拿返佣的平台

大型网站制作怎么样,推广app拿返佣的平台,城乡与建设部网站首页,谷歌推广新手教程React之组件间通信 组件通信: 简单讲就是组件之间的传值,包括state、函数等 1、父子组件通信 父组件给子组件传值 核心:1、自定义属性;2、props 父组件中: 自定义属性传值 import Header from /components/Headerconst Home ()…

React之组件间通信

组件通信: 简单讲就是组件之间的传值,包括state、函数等

1、父子组件通信

父组件给子组件传值

核心:1、自定义属性;2、props

  • 父组件中: 自定义属性传值
import Header from '@/components/Header'const Home = () => {const test = '父组件的值'return (<><div>测试</div>{/* 在子组件的调用标签上,添加自定义属性,属性值就是传递给子组件的数据 */}<Header test={test} /></>)
}
export default Home
  • 子组件中:props接收
const Header = (props: { test: string }) => {// 子组件中props封装着 自定义属性对象console.log(props)return (<><div>header</div></>)
}
export default Header

2、子父组件通信

子组件给父组件传值
核心:1、父组件传递子组件自定义方法;2、子组件调用父组件的自定义方法,并传自己子组件的数据

  • 在父组件中: 传递函数
import Header from '@/components/Header'const Home = () => {const test = (str: string) => {console.log(str)}return (<><div>测试</div>{/* 向子组件传递自定义函数 */}<Header test={test} /></>)
}
export default Home
  • 在子组件中: 接收父组件的函数,通过向父组件函数传参的方法方式,将数据传递给父组件
interface IProps {test: ReturnType<typeof Function> // test: Function
}
const Header = (props: IProps) => {// 子组件中props封装着 自定义属性对象const str = '子组件的值'props.test(str)return (<><div>header</div></>)
}export default Header

3、非父子组件传值

兄弟组件或者其他非父子组件的传值。在Vue中使用的是自定义事件 definEmits()。但是React没有内置的自定义事件方法。需要借助第三方自定义事件,例如eventseventemitter3eventemitter2

  • 安装第三方包
$ yarn add events

ts 还需要安装

$ yarn add @types/events -D
  • 封装自定义事件工具
// EventEmitter :它的实例可以通过require('events')来创建。
import EventEmitter from 'events'const emits = new EventEmitter()
export default emits
  • 在传值的组件中,注册自定义事件
import emits from '@/utils/events'
import { useEffect } from 'react'
const Header = () => {// 注册自定义事件test// 注册自定义事件需要在useEffect中完成useEffect(() => {// 参数1: 自定义事件名// 参数2: 通信传递的值emits.emit('test', 'header 组件的值')}, [])return (<><div>header</div></>)
}export default Header
  • 在接收值的组件中,监听自定义事件
import emits from '@/utils/events'
const Footer = () => {emits.on('test', (str: string) => {console.log(str)})return (<><div>footer</div></>)
}
export default Footer

4、其他非父子组件之间的通信补充

4.1、全局状态管理:Redux全家桶

redux数据持久化
redux异步操作

4.2、React内置的上下文对象:context

  • 通过createContext ,创建要传递的数据对象
import { createContext } from 'react'const appContext = createContext({// 传递的数据test: 'context传的值---测试'
})
export default appContext
  • 在使用创建的context对象的组件中, 通过useContexthook获取上下文对象数据
import appContext from '@/utils/appContext'
import { useContext } from 'react'const Header = () => {// useContext接收自定义的上下文对象参数const context = useContext(appContext)return (<><div>header</div><p>{context.test}</p></>)
}
export default Header
http://www.zhongyajixie.com/news/14972.html

相关文章:

  • 网站开发 北京seo技术博客
  • 大连住建部官方网站湛江今日头条
  • 建设一个网站需要什么硬件求职seo
  • 网站简单化网络营销的方法有哪些?举例说明
  • 动易网络 官方网站班级优化大师官方网站
  • 有教做点心的网站吗鄞州seo服务
  • 微信小程序开发怎么做朝阳区seo
  • 临沂网站制作公司哪家好资源搜索引擎搜索神器网
  • 六十岁一级a做爰片免费网站郑州seo管理
  • 网站建设云南才力seo技术外包 乐云践新专家
  • 互联网最好的公司上海优化公司
  • 老网站绑定新网站如何做?南通网站快速收录
  • 公司响应式网站建设报价百度一下百度一下你就知道
  • 网站备案靠谱吗百度seo关键词排名优化
  • 温州 做网站关键词密度查询站长工具
  • 顺德公司做网站网站运营公司
  • 建设网站预算网站推广方案策划
  • 彩票网站开发的搜索引擎排名查询
  • 网站页面相似度查询工具哪家网络推广好
  • 网站电脑端和手机端百度快照首页
  • 展会搭建设计案例网站网站seo分析
  • 企业查询官方网站拼多多关键词怎么优化
  • 昆明hph网站建设seo属于什么职位类型
  • 东莞有哪些做推广的网站推广渠道
  • 哈尔滨网站建设信息学校教育培训机构
  • 乡村旅游电子商务网站建设百度公司图片
  • 房产网站排行北京自动网络营销推广
  • 广州网站开发 英诺科技搜索百度网页版
  • 常德做网站公司万网域名查询工具
  • 陕西网站建设的内容竞价推广托管开户