Fix: Progress text sometimes does not update#157
Closed
drash-course wants to merge 3 commits intooblador:masterfrom
Closed
Fix: Progress text sometimes does not update#157drash-course wants to merge 3 commits intooblador:masterfrom
drash-course wants to merge 3 commits intooblador:masterfrom
Conversation
Author
|
I discovered that my fix is similar to another PR. Using the getter method is more proper. There is no risk that the value will be driven by the native driver since it's not provided as part of an animation but set from JS as part of a parent component update. |
|
Do you think that will solve the "unfilledColor" bug ? (when progress >= 1 and go done, unfilledColor disappear) |
Author
|
You should try it out, I don't know about this bug unfortunately. |
Pei116
approved these changes
Mar 4, 2020
|
Can we get this one merged? The issue's 100% reproducable and needs to be fixed. @oblador |
|
Can this pull request be merged? Thanks |
Sahith02
approved these changes
Jun 20, 2020
Owner
|
Reading internal properties of the Animated value is not the way to go as it is not a public API and is not available when using stuff like native driver. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I found a small bug in
Circle.js; when I update the progress from0to0.05the progress bar grows to 5% but the text continues to display "0%". Further updates of the component do not show the problem.Repro
Initialise the component with:
Then update it:
Proposed fix
It looks like the listener that is registered in
componentWillMount()setsthis.progressValuetoo late, after the component has updated. A simple solution is to stop usingthis.progressValueand instead read the internal value insidethis.props.progress(an instance ofAnimated.Value). The race condition is therefore avoided.Further improvements
I'm not sure if the
componentDidMount()listener is still useful. It looks like it was there to work around this particular bug. I left it because it may be needed in some other case I'm not aware of.Feel free to amend the merge request.