У меня есть компонент класса PatientQueue в файле PatientQueue.js и Другой компонент класса PatientDetailView в файле PatientDetailView.js.
И я вызываю функцию Getdetails (), которая находится в классе PatientQueue из класса PatientDetailView. Создавая его объект. но когда я звоню Getdetails, я получаю сообщение об ошибке возможного отказа от неопознанного обещания (id: 0):
TypeError: this.props не определено.
Файл PatientQueue
import React from 'react';
import { FlatList, BackHandler, ListView, ToastAndroid, ScrollView, ActivityIndicator,AppState, TouchableOpacity, Alert, StyleSheet, Image, Text, View, Button, AsyncStorage, SafeAreaView, RefreshControl } from 'react-native';
import { createStackNavigator, createAppContainer, DrawerItems } from 'react-navigation';
import { SearchBar, Icon } from 'react-native-elements';
import MultiSelect from 'react-native-multiple-select';
import { PatientDetailView } from './PatientDetailView';
import { connect } from "react-redux";
import { fetchQueue } from '../common/actions/patientQueue';
import { filterQueue } from '../common/actions/filters';
import { clearAllFilters } from '../common/actions/filters';
class PatientQueue extends React.Component {
constructor(props) {
super(props);
...
}
ForTesting(){
console.log("function called")
}
async Getdetails() {
console.log("fetch detailssss")
const retrievedItem = await AsyncStorage.getItem("StorageData");
const getretrievedItem = JSON.parse(retrievedItem);
var loginToken = getretrievedItem.token;
await this.props.dispatch(fetchQueue(loginToken));
console.log("fetch details comleted")
}
render() {
...
}
}
export default connect(mapStateToProps)(PatientQueue);
const RefreshList = new PatientQueue();
export { RefreshList }
Файл PatientDetailView
import React from 'react';
import { FlatList,Modal, ListView,TextInput, Linking,Picker,
TouchableOpacity, ActivityIndicator, Alert, StyleSheet, Text, View, Button, AsyncStorage } from 'react-native';
import { createStackNavigator, createAppContainer } from 'react-navigation';
import { Header, Left, Right, Icon, Container, Body, Title } from 'native-base';
import {RefreshList} from './PatientQueue';
import PatientQueue from './PatientQueue';
class PatientDetailView extends React.Component {
constructor(props) {
super(props);
this.state = {
modalVisible: false,
TransferModalVisible:false,
...
}
}
async OpenUhs(BtnStatus,PatientId) {
RefreshList.Getdetails();
this.props.navigation.navigate("Queue")
}
render() {
...
}
export { PatientDetailView };