Memoising `<TileSet>`

This commit is contained in:
Eric van der Vlist 2022-10-30 20:23:12 +01:00
parent edca3f0d1b
commit 7322e5f5c4
1 changed files with 47 additions and 46 deletions

View File

@ -1,5 +1,5 @@
import react, { } from 'react';
import { range } from 'lodash';
import react, { memo } from 'react';
import { isEqual, range } from 'lodash';
import { Rectangle, TileKeyObject } from './types';
import tileUri from './uris';
@ -51,9 +51,8 @@ export interface TileSetProperties {
*
*
*/
export const TileSet: react.FC<TileSetProperties> = (
props: TileSetProperties
) => {
export const TileSet: react.FC<TileSetProperties> = memo(
(props: TileSetProperties) => {
// console.log(`Rendering TiledLayer: ${JSON.stringify(props)}`);
const key = tileUri({
@ -97,6 +96,8 @@ export const TileSet: react.FC<TileSetProperties> = (
}
return <>{Array.from(tiles.values())}</>;
};
},
isEqual
);
export default TileSet;