gpt4 book ai didi

javascript - 为什么我得到 "undefined is not an object (evaluating PropTypes.shape)"?

转载 作者:可可西里 更新时间:2023-11-01 03:06:35 25 4
gpt4 key购买 nike

每当我尝试运行我的 iOS 模拟器时,我都会收到该错误。所有模块都已安装,我的图片的文件路径是正确的,除了出现在我的模拟器中的错误外,我的 IDE 中没有抛出任何错误。错误图片如下。

Error Image

这是 Login.js:

import React, {Component} from 'react';
import {StyleSheet, TextInput, Text, TouchableOpacity, KeyboardAvoidingView} from 'react-native';

class Login extends Component {
onButtonPress() {
this.props.navigator.push({
id: 'CreateAccount'
});
}

render() {
return(
<KeyboardAvoidingView behavior={"padding"} style={styles.container}>
<TextInput
style={styles.input}
returnKeyType={"next"}
keyboardType={"email-address"}
autoCorrect={false}
placeholder={"Email"}
/>

<TextInput
style={styles.input}
returnKeyType={"go"}
placeholder={"Password"}
secureTextEntry
/>

<TouchableOpacity>
<Text style={styles.loginAndCA}>Login</Text>
</TouchableOpacity>

<TouchableOpacity onPress={this.onButtonPress.bind(this)}>
<Text style={styles.loginAndCA}>Create Account</Text>
</TouchableOpacity>
</KeyboardAvoidingView>
);
}
}

const styles = StyleSheet.create({
container: {
padding: 20 // Length of text input boxes.
},

input: {
backgroundColor: '#DAE5FF',
padding: 20,
paddingHorizontal: 15,
marginBottom: 10,
borderRadius: 15
},

loginAndCA: {
fontSize: 40,
textAlign: 'center',
color: 'white',
fontFamily: 'Bodoni 72 Smallcaps',
paddingHorizontal: 10
}
});

export default Login;

这是 BackGround.js:

import React, {Component} from 'react';
import {StyleSheet, Image, View, Text} from 'react-native';
import Login from './Login';

class BackGround extends Component {
render() {
return(
<View style={styles.first}>
<Image style={styles.container} source={require('../pictures/smoke.jpg')}>
<View style={styles.second}>
<View>
<Text style={styles.title}>My App</Text>
</View>
<Login/>
</View>
</Image>
</View>
);
}
}

const styles = StyleSheet.create({
container: {
flex: 1,
alignItems: 'center',
width: null,
height: null,
backgroundColor: 'rgba(0,0,0,0)'
},

first: {
flex: 1
},

second: {
paddingTop: 290 // Moves both <TextInput> boxes down.
},

title: {
fontSize: 34,
textAlign: 'center',
justifyContent: 'center',
flexDirection: 'row',
fontFamily: 'Bodoni 72'
}

// movementTitle: {
// paddingBottom: 34
// }
});

export default BackGround;

这是 CreateAccount.js:

import React, {Component} from 'react';
import {Text} from 'react-native';

class CreateAccount extends Component {
render() {
return(
<Text>Must get to this page</Text>
);
}
}

export default CreateAccount;

这是 index.ios.js:

import React, {Component} from 'react';
import {View, StyleSheet, AppRegistry} from 'react-native';
import {Navigator} from 'react-native-deprecated-custom-components';
import BackGround from './components/BackGround';
import Login from "./components/Login";
import CreateAccount from "./components/CreateAccount";

export default class App extends Component {
render() {
return(
<View style={styles.back}>
<BackGround/>
<Navigator
initialRoute={{id: 'Login'}}
renderScene={this.navigatorRenderScene}
/>
</View>
);
}

navigatorRenderScene() {
_navigator = navigator;
switch(route.id) {
case 'Login':
return (<Login navigator={navigator} title="Login"/>);
case 'CreateAccount':
return (<CreateAccount navigator={navigator} title="Create Account" />);
}
}
}

const styles = StyleSheet.create({
back: {
flex: 1
}
});

AppRegistry.registerComponent('dendroApp', () => dendroApp);

最佳答案

从 React 15.5 开始,React 最近从其核心库中删除了 PropTypes。

添加行

import PropTypes from 'prop-types';

并直接从中调用你的 proptypes。

关于javascript - 为什么我得到 "undefined is not an object (evaluating PropTypes.shape)"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44910731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com