Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >扩展()接收的react组件

扩展()接收的react组件
EN

Stack Overflow用户
提问于 2016-12-06 03:32:36
回答 1查看 2.2K关注 0票数 2

是否有可能扩展由Redux connect()函数连接的组件?例如,如果我在form-container.js内部,并且正在使用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const FormContainer = connect(
    mapStateToProps,
    mapDispatchToProps
)(Form)

是否有一种方法可以覆盖这样的方法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
FormContainer.componentDidMount = () => ...

还是添加自定义函数?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-06 03:42:47

您可以为此使用高阶组件。我从这篇文章借用这个例子

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function HigherOrderComponent(WrappedComponent) {
  return class NewComponent extends React.Component {
    constructor() {
      super(props)
      this.customMethod = this.customMethod.bind(this)
    }
    customMethod() {
      console.log('You called an injected method');
    }
    render() {
      return <WrappedComponent {...this.props} customMethod={this.customMethod} />
    }
  }
}

如何使用此自定义方法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import HigherOrderComponent from './HigherOrderComponent'

class MyComponent extends React.Component {
  constructor(props) {
    super(props)
  }
  componentDidMount() {
    this.props.customMethod()
  }
  render() {
      ...
  }
}
const MutatedComponent = HigherOrderComponent(MyComponent)
const ConnectedComponent = connect(
  mapStateToProps,
  mapDispatchToProps
)(MutatedComponent)

据我所知,您不能覆盖React组件的生命周期方法。但是可以使用HoC注入方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40994351

复制
相关文章
React---新扩展Context和组件优化
  const XxxContext = React.createContext()
半指温柔乐
2021/05/13
5880
React Hooks 源码解析(2): 组件逻辑复用与扩展
React 源码版本: v16.9.0 源码注释笔记:airingursb/react 如何复用和扩展 React 组件的状态逻辑?具体而言,有以下五种方案: Mixins Class Inheritance Higher-Order Component Render Props React Hooks 下面,我们一一介绍五种方案的实现。 1. Mixins Mixins 混合,其将一个对象的属性拷贝到另一个对象上面去,其实就是对象的融合,它的出现主要就是为了解决代码复用问题。 扩展:说到对象融合,
QQ音乐前端团队
2019/11/18
1.5K0
React Hooks 源码解析(2): 组件逻辑复用与扩展
React - 组件:类组件
他有自己的生命周期也有react给他提供的一些内置函数方法。有自己的this和状态。
xing.org1^
2019/12/11
2K0
React - 组件:类组件
React 组件
接下来我们封装一个输出 "Hello World!" 的组件,组件名为 HelloMessage:
陈不成i
2021/07/29
7530
React组件的本质
也许你已经使用React很长时间了,你使用优雅的jsx语法和React hooks来构建组件,最终构成页面。
Mirone
2020/04/29
1.4K0
【Kotlin】扩展接收者 与 分发接收者 ( 类内部扩展用法 | 注意事项 | open 修饰扩展 )
1 . 扩展函数 / 属性声明的位置 : 之前的扩展都是在类的外部 , Kotlin 文件中定义的 , 在 类内部 也可以定义 其它类 的扩展函数 与 扩展属性 ;
韩曙亮
2023/03/27
2650
【Kotlin】扩展接收者 与 分发接收者 ( 类内部扩展用法 | 注意事项 | open 修饰扩展 )
React-组件-非受控组件 和 React-组件-高阶组件
🌊 关注我不迷路,如果本篇文章对你有所帮助,或者你有什么疑问,欢迎在评论区留言,我一般看到都会回复的。大家点赞支持一下哟~ 💗
杨不易呀
2023/09/30
1890
扩展 Vue 组件
你是否在开发基于 Vue 的 app 时使用过具有相同属性甚至具有相同的 template 结构的组件?
疯狂的技术宅
2019/03/28
1.7K0
扩展 Vue 组件
Vue 组件扩展
最近,新项目架构搭建在扩展组件的场景中:图表使用了extends方式,而公共业务server和view之间使用了mixins方式。对于二者的选择,我们通常会解释为extends的优先级高于mixins,但其真实的差异是由于其合并策略不同或者说在合并策略中执行的顺序不同导致的 – 源码
奋飛
2019/08/14
1.3K0
React入门四:React组件的使用
思考:项目中的组件多了后,该如何组织这些组件那? 选择1:将所有组件都写在一个js文件中 选择2:将所有组件都放到单独的js文件中 组件作为一个独立的个体,一般会放到一个单独的js文件中。
用户4793865
2023/01/12
1.3K0
react子组件向父组件传递数据_react子组件改变父组件的状态
本博客代码是 React 父组件和子组件相互传值的 demo;实现封装一个折线图,折线图选择下拉框,获取下拉框点击的值并且传给父组件根据下拉框筛选的条件更新视图;效果图如下:
全栈程序员站长
2022/10/03
3.6K0
react子组件向父组件传递数据_react子组件改变父组件的状态
react 纯函数组件_react类组件
定义:一个函数的返回结果只依赖于它的参数,并且在执行的过程中没有副作用,我们就把该函数称作纯函数。
全栈程序员站长
2022/11/17
1.6K0
react 纯函数组件_react类组件
Vue 组件扩展
最近,新项目架构搭建在扩展组件的场景中:图表使用了extends方式,而公共业务server和view之间使用了mixins方式。对于二者的选择,我们通常会解释为extends的优先级高于mixins,但其真实的差异是由于其合并策略不同或者说在合并策略中执行的顺序不同导致的 – 源码
奋飛
2021/08/30
3760
Vue 组件扩展
React 入门学习(十七)-- React 扩展
学到这里 React 已经学的差不多了,接下来就学习一些 React 扩展内容,可以帮助我们更好的开发和理解,这部分的知识还有很多的东西可以探寻,比如:网红 React-Hook,就是我们需要注意的地方,打了 100 多集的类式组件,出来一个 hooks ,现在用函数式组件偏多了…
小丞同学
2021/10/13
7100
React 入门学习(十七)-- React 扩展
学到这里 React 已经学的差不多了,接下来就学习一些 React 扩展内容,可以帮助我们更好的开发和理解,这部分的知识还有很多的东西可以探寻,比如:网红 React-Hook,就是我们需要注意的地方,打了 100 多集的类式组件,出来一个 hooks ,现在用函数式组件偏多了…
小丞同学
2022/11/15
8470
React 入门学习(十七)-- React 扩展
React学习笔记—React组件
1、Component React的首要思想是通过组件(Component)来开发应用。所谓组件,简单说,指的是能完成某个特功能的独立的、可重用的代码。 基于组件的应用开发是广泛使用的软件开发模式,用分而治之的方法把一个大的应用分解成若干小的组件,每个组件只关注于某个小范围的特定功能,但是把组件组合起来,就能够构成一个功能庞大的应用。如果分解功能的过程足够巧妙,那么每个组件可以在不同场景下重用,那样不光可以构建庞大的应用,还可以构建出灵活的应用。打个比方,每个组件是一块砖,而一个应用是一座楼,想要一次锻造就
小胖
2018/06/28
9730
React - 组件:函数组件
1. 组件名字首字母一定是大写的 2. 返回一个jsx 3. jsx依赖React,所以组件内部需要引入React 4. 组件传参 a. 传递. <Component list={ arrData }><Component> b. 接收. function Component( props ){...} c. 使用. const { list } = props,list就是参数数据 5. 缺点:【无状态组件】只能实现很简单的视图展示功能,没有自己的内容数据、没有状态,没有逻辑处理,【没有this】,【没有生命周期】。 6. 16.7以后版本的react有状态和钩子函数提供使用。不过版本过新不推荐用 内部不用render函数,会自动把return返回结果当做render返回结果【见类组件的必须要求】
xing.org1^
2019/11/26
1.8K0
React - 组件:函数组件
React组件复用的技巧
假如我们有一个Layout组件,那么一般来说这个组件主要接收的就是children,把它放在主要内容的部分,然后组件本身的节点来控制布局,那么这个时候如果我们这个布局包含两个部分呢,比如还有一个header部分,是跟主要内容有明显区分的。
夏天的味道123
2022/10/04
4720
React中的高阶组件
高阶组件HOC即Higher Order Component是React中用于复用组件逻辑的一种高级技巧,HOC自身不是React API的一部分,它是一种基于React的组合特性而形成的设计模式。
WindRunnerMax
2021/01/18
3.8K0
点击加载更多

相似问题

React组件未接收属性

118

扩展react组件组合

111

如何扩展React组件?

22

React演示组件未从智能组件接收MapDispatchToProps

21

React组件没有接收到道具

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文