You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is how FunctionComponent.Of caches passed function:
// Cache the render function to prevent recreating the component every time when FunctionComponent.Of
// is called inside another function (including generic values: let MyCom<'T> = ...)
let cacheKey = __callingSourceFile.Value + "#L" + (string __callingSourceLine.Value)
I have a reusable piece of code that uses FunctionComponent.Of for different cases and they result in the same cacheKey. So it picks a wrong function at runtime for all cases but one.
At least the displayName should also be part of the cacheKey (I pass a custom value anyway) or accept optional custom cacheKey (although that would reveal its implementation).
None of the options is available which keeps me pinned to Fable.React 5.4.0 (last version before function caching was intorduced)
The text was updated successfully, but these errors were encountered:
Actually my problem was that caller of the Of is also generic code.
So it's better to include 'Props type name into the cache key so there's no need to expose internal caching mechanism to library users (requires Of to become inline though).
This is how
FunctionComponent.Of
caches passed function:I have a reusable piece of code that uses
FunctionComponent.Of
for different cases and they result in the same cacheKey. So it picks a wrong function at runtime for all cases but one.At least the
displayName
should also be part of the cacheKey (I pass a custom value anyway) or accept optional custom cacheKey (although that would reveal its implementation).None of the options is available which keeps me pinned to Fable.React 5.4.0 (last version before function caching was intorduced)
The text was updated successfully, but these errors were encountered: