Skip to content

Commit f374644

Browse files
committed
📦 Factor out renderEmpty methods
1 parent 82ae221 commit f374644

File tree

2 files changed

+20
-7
lines changed

2 files changed

+20
-7
lines changed

src/ImmutableListView/ImmutableListView.js

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -167,11 +167,11 @@ class ImmutableListView extends PureComponent {
167167
scrollToEnd = (...args) =>
168168
this.listViewRef && this.listViewRef.scrollToEnd(...args);
169169

170-
render() {
171-
const { dataSource } = this.state;
170+
renderEmpty() {
172171
const { immutableData, enableEmptySections, renderEmpty, renderEmptyInList, contentContainerStyle } = this.props;
173172

174-
if ((renderEmpty || renderEmptyInList) && utils.isEmptyListView(immutableData, enableEmptySections)) {
173+
const shouldTryToRenderEmpty = renderEmpty || renderEmptyInList;
174+
if (shouldTryToRenderEmpty && utils.isEmptyListView(immutableData, enableEmptySections)) {
175175
if (renderEmpty) {
176176
if (typeof renderEmpty === 'string') {
177177
return <Text style={[styles.emptyText, contentContainerStyle]}>{renderEmpty}</Text>;
@@ -187,7 +187,13 @@ class ImmutableListView extends PureComponent {
187187
}
188188
}
189189

190-
return (
190+
return null;
191+
}
192+
193+
render() {
194+
const { dataSource } = this.state;
195+
196+
return this.renderEmpty() || (
191197
<ListView
192198
ref={(component) => { this.listViewRef = component; }}
193199
dataSource={dataSource}

src/ImmutableVirtualizedList/ImmutableVirtualizedList.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,11 @@ class ImmutableVirtualizedList extends PureComponent {
8181
recordInteraction = (...args) =>
8282
this.virtualizedListRef && this.virtualizedListRef.recordInteraction(...args);
8383

84-
render() {
84+
renderEmpty() {
8585
const { immutableData, renderEmpty, renderEmptyInList, contentContainerStyle } = this.props;
8686

87-
if ((renderEmpty || renderEmptyInList) && utils.isEmptyListView(immutableData)) {
87+
const shouldTryToRenderEmpty = renderEmpty || renderEmptyInList;
88+
if (shouldTryToRenderEmpty && utils.isEmptyListView(immutableData)) {
8889
if (renderEmpty) {
8990
if (typeof renderEmpty === 'string') {
9091
return <Text style={[styles.emptyText, contentContainerStyle]}>{renderEmpty}</Text>;
@@ -100,7 +101,13 @@ class ImmutableVirtualizedList extends PureComponent {
100101
}
101102
}
102103

103-
return (
104+
return null;
105+
}
106+
107+
render() {
108+
const { immutableData } = this.props;
109+
110+
return this.renderEmpty() || (
104111
<VirtualizedList
105112
ref={(component) => { this.virtualizedListRef = component; }}
106113
data={immutableData}

0 commit comments

Comments
 (0)