Я работаю над приложением по реакции native.У меня возникла проблема. Когда мое приложение работает в режиме отладки, оно работает очень хорошо. Но в режиме без отладки мой плоский список не выполняется полностью.например: при рендеринге моя плоская дата списка недопустима.
<FlatList
style={{ flex: 1 }}
extraData={this.state}
data={this.state.data}
renderItem={this.renderItem.bind(this)}
keyExtractor={item => item._id.toString()}
ListFooterComponent = { this.Render_Footer.bind(this) }
/>
и Render Item by:
renderItem({item}) {
console.log(item)
return <View
<View style={{flexDirection: 'row', justifyContent: 'space-between'}}>
<Text style={{fontFamily: Font.main, fontSize: 12}}>{I18n.t('Type')}</Text>
<Text style={{fontSize: 12, fontFamily: Font.main}}>{I18n.t(item.type)}</Text>
</View>
<View style={{flexDirection: 'row', justifyContent: 'space-between'}}>
<Text style={{fontFamily: Font.main, fontSize: 12}}>{I18n.t('OrderDate')}</Text>
<Text style={{
fontFamily: this.state.isrtl ? Font.main_persian_digit : Font.main, color: Color.Gray
, fontSize: 12
}}>{this.state.isrtl ? getshamsidate(item.effective_time) : getmiladdate(item.effective_time)}</Text>
</View>
<View style={{flexDirection: 'row', justifyContent: 'space-between'}}>
<Text style={{
fontFamily: Font.main,
color: item.status === 'pardakht' ? Color.green : Color.primarycolor,
fontSize: 12
}}>{I18n.t('TotalAmount')}</Text>
<Text style={{
fontFamily: this.state.isrtl ? Font.main_persian_digit : Font.main,
color: item.status === 'pardakht' ? Color.green : Color.primarycolor
,
fontSize: 12
}}>{addCommas(item.amount)} {I18n.t('Toman')}</Text>
</View>
<View style={{flexDirection: 'row', justifyContent: 'space-between'}}>
<Text style={{fontFamily: Font.main, fontSize: 12}}>{I18n.t('Status')}</Text>
{
item.status === 'SUCCESS' ?
<View style={{flexDirection: 'row', justifyContent: 'center', alignItems: 'center'}}>
<Icon
style={{fontSize: 10}}
name='checkmark'
/>
<Text style={{
fontFamily: this.state.isrtl ? Font.main_persian_digit : Font.main,
paddingLeft: 5,
paddingRight: 5
,
fontSize: 12
}}>{I18n.t(item.status)}</Text>
</View>
:
<View style={{flexDirection: 'row', justifyContent: 'center', alignItems: 'center'}}>
<Icon
style={{fontSize: 10, color: 'red'}}
name='close'
/>
<Text style={{
fontFamily: this.state.isrtl ? Font.main_persian_digit : Font.main,
color: Color.Red,
paddingLeft: 5,
paddingRight: 5
,
fontSize: 12
}}>{I18n.t(item.status)}</Text>
</View>
}
</View>
<View style={{flexDirection: 'row', justifyContent: 'space-between'}}>
<Text style={{fontFamily: Font.main, fontSize: 12}}>{I18n.t('PreviousCredit')}</Text>
<View style={{flexDirection: 'row', justifyContent: 'center', alignItems: 'center'}}>
<Text style={{
fontFamily: this.state.isrtl ? Font.main_persian_digit : Font.main,
paddingLeft: 5,
paddingRight: 5
,
fontSize: 12
}}>{item.balance_before !== null ?
addCommas(item.balance_before.toString()) : 0
} {I18n.t('Toman')}
</Text>
</View>
</View>
<View style={{flexDirection: 'row', justifyContent: 'space-between'}}>
<Text style={{fontFamily: Font.main, fontSize: 12}}>{I18n.t('NextCredit')}</Text>
<View style={{flexDirection: 'row', justifyContent: 'center', alignItems: 'center'}}>
<Text style={{
fontFamily: this.state.isrtl ? Font.main_persian_digit : Font.main,
paddingLeft: 5,
paddingRight: 5
,
fontSize: 12
}}>{item.balance_after !== null ?
addCommas(item.balance_after.toString()) : 0
} {I18n.t('Toman')}
</Text>
</View>
</View>
<View style={{flexDirection: 'row', justifyContent: 'space-between'}}>
<Text style={{fontFamily: Font.main, fontSize: 12}}>{I18n.t('bankcorrelationid')}</Text>
<View style={{flexDirection: 'row', justifyContent: 'center', alignItems: 'center'}}>
{item.debit !== undefined ?
<Text style={{
fontFamily: this.state.isrtl ? Font.main_persian_digit : Font.main,
color: Color.linkcolor,
paddingLeft: 5,
paddingRight: 5
,
fontSize: 12
}}>{item.debit.bank_corelation_id}
</Text> : null}
</View>
</View>
{
Object.keys(item.cart).length !== 0 ?
<TouchableOpacity style={{flexDirection: 'row', justifyContent: 'space-between', paddingTop: 5}}
onPress={() => {
this.props.navigation.navigate('TransAction', {product: item.cart})
}
}
>
<Text style={{
fontFamily: Font.main,
color: Color.circleblu,
fontSize: 12
}}>{I18n.t('Orderdetails')}</Text>
<View style={{flexDirection: 'row', justifyContent: 'center', alignItems: 'center'}}>
<Icon
style={{fontSize: 14, color: Color.circleblu}}
name={this.state.isrtl ? 'arrow-back' : 'arrow-forward'}
/>
</View>
</TouchableOpacity>
: null
}
</View>
}
Приведенный выше код, рендеринг моего элемента в flatlist. в режиме отладки работает оченьхорошо, но в режиме релиза дата в undefinedNaN: Nan показала