Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.5.0 Release Candidate #88

Open
3 of 6 tasks
brh55 opened this issue Jun 12, 2018 · 12 comments
Open
3 of 6 tasks

v0.5.0 Release Candidate #88

brh55 opened this issue Jun 12, 2018 · 12 comments

Comments

@brh55
Copy link
Owner

brh55 commented Jun 12, 2018

Current Release: v0.5.0-alpha.1
Released as alpha as it fixes major bugs in v0.4.0 and is stable enough. Once everything has properly been vetted, we will release as stable.

Tasks

Bugs

Please post any bugs and issues on here

@ahmedjamshed
Copy link

Duplicate image issue has been resolved in v0.5.0, but other two issues still persist. Although, single column render issue is not consistent on ios but it is consistent on android. I am attaching an image as a reference. Is there any quick fix for this? and the second issue is left biased render as you can see in ios simulator.

41281508-6c53a854-6de6-11e8-9a50-0ba9bac4e9c8

@brh55
Copy link
Owner Author

brh55 commented Jun 12, 2018

@ahmedjamshed what are "other two issues" exactly?

@ahmedjamshed
Copy link

Issues still persist are

  1. left biased rendering as you can see on ios simulator
  2. Single column rendering on Android and sometimes on ios as well, when images are cached

@brh55
Copy link
Owner Author

brh55 commented Jun 12, 2018

  1. Left bias is default behavior, it will load based on what is resolved first. But with v0.5.0, not documented yet, you can use priority='balance', and it will do best effort to balance columns based on current state.

@brh55
Copy link
Owner Author

brh55 commented Jun 12, 2018

  1. Not entirely sure, I haven't done any testing on android. I would believe it has to do with some intermediate state changes during image fetching.

@ahmedjamshed
Copy link

ahmedjamshed commented Jun 13, 2018

Can I improve that by returning false in shouldcomponentupdate until images are fully loaded? I can check that with fast image. or can you suggest any another solution ?

@brh55
Copy link
Owner Author

brh55 commented Jun 13, 2018

@ahmedjamshed The problem is bricks are resolved async so you'll probably run into issues there. Considering using redux to manage the async state, or migrate data.task to the new version which supports task cancellation and cancelled any unresolved bricks in component state.

@srameshr
Copy link
Contributor

@brh55 Also support infinite loading

@brh55
Copy link
Owner Author

brh55 commented Jun 22, 2018

@srameshr My apologize, I was referring to lazy loading, but in actuality I mistaken it with infinite loading. Optimized loading is already handled with flatlist.

You can use onEndReached and a onEndReachedThreshold

@sashabratchikov
Copy link

sashabratchikov commented Jun 27, 2018

@brh55

When I pass some navigation action as an onPress handler to bricks all my bricks suddenly disappear.

I think this is caused by resolveBricks called with an empty bricks array here:
https://github.com/brh55/react-native-masonry/blob/v0.5.0/components/Masonry.js#L102

In my case, the data is not changing after onPress so brickDiff is an empty array (and appendedData is true):
screen shot 2018-06-27 at 20 27 13

so resolveBricks is called like this:

		if (appendedData) {
			const offSet = this.props.bricks.length;
			this.setState({
				_uniqueCount
			}, this.resolveBricks({...nextProps, bricks:[]}, offSet));
		}

@dkt201474
Copy link

Hi @brh55 great project.

You might want to consider https://github.com/Flipkart/recyclerlistview as a replacement of ListView to improve performance

@lc3t35
Copy link

lc3t35 commented Dec 2, 2018

Hi, any plan to releasing this new version ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants