我喜欢recompose
,但是当我使用它时,我会看到堆栈跟踪,其中包含以下行:
in withProps(withHandlers(withHandlers(SelectionOverlay))) (created by withState(withProps(withHandlers(withHandlers(SelectionOverlay)))))
有什么方法可以为各个 HOC 组件提供某种“显示名称”以获得更具可读性的堆栈跟踪?
我喜欢recompose
,但是当我使用它时,我会看到堆栈跟踪,其中包含以下行:
in withProps(withHandlers(withHandlers(SelectionOverlay))) (created by withState(withProps(withHandlers(withHandlers(SelectionOverlay)))))
有什么方法可以为各个 HOC 组件提供某种“显示名称”以获得更具可读性的堆栈跟踪?
查看此部分: https ://github.com/acdlite/recompose#build-your-own-libraries
我相信您可以为您的组件分配一个静态属性,该属性displayName
将传递给堆栈跟踪以及 React chrome 扩展。
所以如果你的 HOC 是这样组成的,你可以写:
const MyComponent = withProps(withHandlers(withHandlers(SelectionOverlay)))
MyComponent.displayName = "ArbitraryValue"
有一种setDisplayName
方法似乎可以满足您的要求 - https://github.com/acdlite/recompose/blob/master/docs/API.md#setdisplayname