我喜欢billCity
billFirstName
billEmailAddress
billLastName
Traceback (most recent call last):
File "./fl_bot.py", line 42, in <module>
ele = ui.WebDriverWait(browser, 90).until(EC.element_to_be_clickable((By.XPATH, "//input[@id='"+info+"']")))
File "/Library/Python/2.7/site-packages/selenium/webdriver/support/wait.py", line 80, in until
raise TimeoutException(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message:
,但是当我使用它时,我最终会看到包含以下行的堆栈痕迹:
recompose
我有什么方法可以提供某种&#34;显示名称&#34;到各个HOC组件,以获得更多可读的堆栈跟踪?
答案 0 :(得分:1)
查看此部分: https://github.com/acdlite/recompose#build-your-own-libraries
我相信你可以只为你的组件分配一个名为displayName
的静态属性,它将被传递给堆栈跟踪以及React chrome扩展。
因此,如果你的HOC是这样编写的,你可以写:
const MyComponent = withProps(withHandlers(withHandlers(SelectionOverlay)))
MyComponent.displayName = "ArbitraryValue"
答案 1 :(得分:1)
有一种setDisplayName
方法似乎可以满足您的要求 - https://github.com/acdlite/recompose/blob/master/docs/API.md#setdisplayname
答案 2 :(得分:1)
您可能想尝试recompact
而不是在整个地方使用setDisplayName
,而benchmarks旨在解决recompose
ed组件可怕嵌套的问题。
作为一个令人愉快的补充,Sorting表明它比recompose
快一点。