#ios #react-native #react-native-tab-view
#iOS #react-native #react-native просмотр вкладок
Вопрос:
Я создаю свое первое приложение на основе react native и внедряю вкладки с использованием react-native tabview. Застрял с ошибкой :
«Ошибка типа: неопределенный не является объектом (вычисление ‘_this.props.navigationState.routes.длина’).
Это скриншот ошибки, которую я получаю.
import * as React from 'react';
import {
Platform, StyleSheet, Text, View, Dimensions, StatusBar, FlatList, ImageBackground, TextInput
} from 'react-native';
import { TabView, SceneMap } from 'react-native-tab-view';
const FirstRoute = () => (
<View style={[styles.scene, { backgroundColor: '#ff4081' }]} />
);
const SecondRoute = () => (
<View style={[styles.scene, { backgroundColor: '#673ab7' }]} />
);
export default class App extends React.Component {
state = {
index: 0,
routes: [
{ key: 'first', title: 'First' },
{ key: 'second', title: 'Second' },
],
};
render() {
return (
<View style={styles.container}>
<TabView
navigationState={this.state}
renderScene={SceneMap({
first: FirstRoute,
second: SecondRoute,
})}
onIndexChange={index => this.setState({ index })}
initialLayout={{ width: Dimensions.get('window').width }}
style={styles.container}
/>
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
backgroundColor: '#F5FCFF',
marginTop: StatusBar.currentHeight
},
scene: {
flex: 1,
},
});
Ответ №1:
Итак, я скопировал / вставил и запустил ваш код (с другим цветом фона) в качестве дополнения к выставке здесь:https://snack.expo.io/B1-xKYu2N и это работает.
Если это ваш первый проект, наиболее вероятной проблемой является отсутствие или неправильно установленные пакеты. Дважды проверьте свой package.json
на что-то вроде "react-native-tab-view": "^2.0.1"
. Если он есть (или после того, как вы его добавите), попробуйте запустить rm -rf ./node_modules amp;amp; npm install
в терминале из каталога проекта, чтобы удалить пакеты и переустановить их. Хотел бы я быть более полезным!
Комментарии:
1. Я сталкиваюсь с той же проблемой, но проблема не решена, можете ли вы, пожалуйста, помочь мне в этом, попробуйте запустить rm -rf ./node_modules amp; amp; npm install в терминале из каталога проекта, чтобы удалить пакеты и переустановить их не удалось понять