From f7f67dd43c9fdc20567346ab2953288ea5d50c9f Mon Sep 17 00:00:00 2001 From: Igor Tkachenko Date: Sat, 28 Nov 2020 17:52:03 +0100 Subject: [PATCH 1/2] Fixed react-native under expo-web image size issue 1. Under expo web, react native incorrectly resize div with the image in the background. Fixed size should be set. 2. Fix for react 17 lifecycle --- src/native/components/sprite.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/native/components/sprite.js b/src/native/components/sprite.js index 5d166e8..6cfa0c4 100644 --- a/src/native/components/sprite.js +++ b/src/native/components/sprite.js @@ -17,6 +17,8 @@ export default class Sprite extends Component { ticksPerFrame: PropTypes.number, tileHeight: PropTypes.number, tileWidth: PropTypes.number, + sourceHeight: PropTypes.number, + sourceWidth: PropTypes.number }; static defaultProps = { @@ -29,6 +31,8 @@ export default class Sprite extends Component { ticksPerFrame: 4, tileHeight: 64, tileWidth: 64, + sourceHeight: 64, + sourceWidth: 64 }; static contextTypes = { @@ -54,6 +58,10 @@ export default class Sprite extends Component { this.loopID = this.context.loop.subscribe(animate); } + UNSAFE_componentWillReceiveProps(nextProps) { + return componentWillReceiveProps(nextProps) + } + componentWillReceiveProps(nextProps) { if (nextProps.state !== this.props.state) { this.finished = false; @@ -109,6 +117,8 @@ export default class Sprite extends Component { return { position: 'absolute', + height: this.props.sourceHeight, + width: this.props.sourceWidth, transform: [ { translateX: left * -1 }, { translateY: top * -1 }, From ea1275b210789d82adf66901906b3e6c8bc17967 Mon Sep 17 00:00:00 2001 From: Igor Tkachenko Date: Sat, 28 Nov 2020 17:54:20 +0100 Subject: [PATCH 2/2] Update sprite.js --- src/native/components/sprite.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/native/components/sprite.js b/src/native/components/sprite.js index 6cfa0c4..c7250da 100644 --- a/src/native/components/sprite.js +++ b/src/native/components/sprite.js @@ -59,7 +59,7 @@ export default class Sprite extends Component { } UNSAFE_componentWillReceiveProps(nextProps) { - return componentWillReceiveProps(nextProps) + return this.componentWillReceiveProps(nextProps) } componentWillReceiveProps(nextProps) {