From 8e073fc55cc991cc7f39ca702980a63f9c72a317 Mon Sep 17 00:00:00 2001 From: chenjiahan Date: Wed, 2 Sep 2020 15:39:58 +0800 Subject: [PATCH] perf(Empty): avoid network icon re-render --- src/empty/Network.js | 231 ++++++++++++++++++++----------------------- src/empty/index.js | 4 +- 2 files changed, 109 insertions(+), 126 deletions(-) diff --git a/src/empty/Network.js b/src/empty/Network.js index 5fd851910..a4a3bc0db 100644 --- a/src/empty/Network.js +++ b/src/empty/Network.js @@ -1,125 +1,108 @@ -export default { - render() { - const genStop = (color, offset, opacity) => ( - - ); +const renderStop = (color, offset, opacity) => ( + +); - return ( - - - - {genStop('#FFF', 0, 0.5)} - {genStop('#F2F3F5', 100)} - - - {genStop('#F2F3F5', 0, 0.3)} - {genStop('#F2F3F5', 100)} - - - {genStop('#EBEDF0', 0)} - {genStop('#DCDEE0', 100, 0)} - - - {genStop('#EAEDF0', 0)} - {genStop('#DCDEE0', 100)} - - - {genStop('#EAEDF0', 0)} - {genStop('#DCDEE0', 100)} - - - {genStop('#EAEDF0', 0)} - {genStop('#DCDEE0', 100)} - - - {genStop('#EAEDF0', 0)} - {genStop('#DCDEE0', 100)} - - - {genStop('#EBEDF0', 0)} - {genStop('#FFF', 100, 0)} - - - - - - - - - - - - - - - - - - - - - - - - - ); - }, -}; +export const Network = ( + + + + {renderStop('#FFF', 0, 0.5)} + {renderStop('#F2F3F5', 100)} + + + {renderStop('#F2F3F5', 0, 0.3)} + {renderStop('#F2F3F5', 100)} + + + {renderStop('#EBEDF0', 0)} + {renderStop('#DCDEE0', 100, 0)} + + + {renderStop('#EAEDF0', 0)} + {renderStop('#DCDEE0', 100)} + + + {renderStop('#EAEDF0', 0)} + {renderStop('#DCDEE0', 100)} + + + {renderStop('#EAEDF0', 0)} + {renderStop('#DCDEE0', 100)} + + + {renderStop('#EAEDF0', 0)} + {renderStop('#DCDEE0', 100)} + + + {renderStop('#EBEDF0', 0)} + {renderStop('#FFF', 100, 0)} + + + + + + + + + + + + + + + + + + + + + + + + +); diff --git a/src/empty/index.js b/src/empty/index.js index e99e1bd78..1e186a789 100644 --- a/src/empty/index.js +++ b/src/empty/index.js @@ -1,5 +1,5 @@ import { createNamespace } from '../utils'; -import Network from './Network'; +import { Network } from './Network'; const [createComponent, bem] = createNamespace('empty'); @@ -23,7 +23,7 @@ export default createComponent({ let { image } = props; if (image === 'network') { - return ; + return Network; } if (PRESET_IMAGES.indexOf(image) !== -1) {