问题标签 [high-order-component]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - TypeError:在尝试实现 HOC 时,Object(...) 不是函数
我试图在这里和其他帖子中阅读接受的答案,但不能放弃弄清楚这是否对我有帮助。我觉得那里的情况有所不同。
我已经看过一些关于如何使用 HOC 的示例,看起来就像我一样。是不是因为我想用 HOC 来实现connect
?
这是我的 HOC:
这是我试图用 HOC 包装的组件:
我不断收到的错误是包装组件中导出的最后一行。
reactjs - HOC组件如何设置key?
这是我的代码的一个示例,其中警告:列表中的每个孩子都应该有一个唯一的“键”道具。
所以我尝试了:
和这个:
两者都不起作用。
withSwipeDelete
是一个高阶组件:
javascript - ReactJS HOC dudes(高阶组件)
创建一个高阶组件以能够执行加载程序。我解释一下自己,我有一个组件可以执行对 JSON api 的获取,但是我希望在加载并且卡片没有出现时,这是一条消息,上面写着 Loading ...
我已经在卡片组件中进行了此验证,但我希望它是动态的,并且也能够在用户卡片中重复此逻辑
附加组件代码及其验证
高阶组件:
这就是为什么我需要能够访问 CardsGrid 中的变量“课程”。为了能够将消息加载的逻辑放在 HOC 内部
我试试这个:
但是...:消息错误
reactjs - 状态组件的 React Native 高阶组件
我正在尝试使用 Typescript 为 React Native 中的状态组件做一个 hoc,我想将它用作装饰器。我的类型定义如下:
但我得到了错误Type '(target: any) => typeof MyClass' is not assignable to type 'T'
我应该改变什么以使其正确使用打字稿?
reactjs - 向 React Typescript 高阶组件添加属性,包括实现
我正在尝试构建一个我想要执行以下操作的 React HOC:
- 获取传入的组件,添加(或覆盖)
hidden
属性,并返回修改后的组件 - 渲染组件,以便当“隐藏”为真时,不渲染任何内容
我在 Typescript 中为特定组件工作,如下所示
但是,我想将这两个类变成一个 HOC。有什么建议么?
编辑:我想要足够通用的东西来处理所有组件类型,而不仅仅是这两种情况,所以我可以轻松地将 HOC 用于 和 以外的Fab
组件ButtonWithText
。
javascript - 语法高阶组件 - Autosizer
据我了解并遵循文档,HOC 是一个函数,它接受一个组件并返回一个新组件。一个例子是 react-redux 的函数 connect:
我使用Autosizer
fromReact-virtualized
并在其文档中找到了下一个定义:
自动调整单个孩子的宽度和高度的高阶组件。
其文档中使用的语法示例是下一个:
不确定我是否在下面提出适当的问题,以便我了解正在发生的事情。如果不是,我请您忘记这两个问题并以不同的方式解释它。
1) 为什么 Autosizer 是 HOC?我不能说它是一个接收一个组件并以与 react-redux 中的连接相同的方式返回另一个组件的函数。
2) 在匿名函数({height, width}) => {...}
中,高度和宽度是被传递对象的属性。哪个对象以及它来自哪里?
reactjs - curry 函数(创建 HOC)中的反应钩子从 linter 'React Hook“useContext”不能在回调中调用'返回错误'
在我的项目中,我摆脱了类,我只是使用 Hooks。现在我正在尝试创建一个 HOC,我的 linter 在我的 curry 函数中使用 Hooks 返回一个错误。这是我的代码的简化版本:
完整的 eslint 错误是这个:
有什么线索吗?我真的很感激任何建议
javascript - 错误:对象作为 React 子对象无效(发现:对象与键 {$$typeof, type, compare, WrappedComponent, displayName})
当我进入我的 React Router-dom时,我将我的路由指向一个验证页面。无论是否登录事件目标,我都会将我的路线(历史)推送到所需页面,但我不断收到以下错误。
应用程序.js
必需的Auth.js
Dashbord.js
已经尝试使用 HOC react 官方页面,但是当我实现这个验证时,我总是让自己陷入这个错误,但是当我删除 HOC 实现时,一切都完美呈现。
reactjs - React,Material-UI:如何使用 typescript 组合具有自定义道具的功能组件
我正在尝试使 MyCustomButton 与 Material-ui 中的 Button 组合
而且我有一个错误代码如下: 解析错误:表达式预期。
我通过material-ui 中的官方文档获得了一些信息,但我还没有完成构图。
完整代码在https://codesandbox.io/s/jolly-dawn-keuj5
有没有人给我一些解决方案?
感谢您的时间。
javascript - 这是一个有效的 React HoC 用例吗?
我正在向自己介绍 React 的 HoC 模式。
我有一个视频播放器组件,有时需要select
更改视频 src url 中的参数。
为了简化事情,这是我的 HoC 的简化版本:
要使用它,我会这样做:
PlayerComponent
被包装的组件在哪里。HoC 基本上是广告一个组件,PlayerTimeComtrol
用于更改视频播放器的 src。
这是有效的用例吗?还有其他更准确的解决方案吗?也许只使用组件包装器而不是 HoC?