我正在阅读有关使用“Navigator”对象的React Native的教程,该教程在发布教程后显然已被弃用。有一些勘误表,据说可以修复代码,但仍然无法阻止上述错误。我已经搜索了关于这个主题的其他问题,但解决方案对我不起作用。
我已经安装了'react-native-deprecated-custom-components'
和'prop-types'
,并将它们包含在下面的代码中。
以下是代码:
import React, { Component } from 'react';
import {
Platform,
StyleSheet,
Text,
View,
Image,
TouchableOpacity
} from 'react-native';
import { Navigator } from 'react-native-deprecated-custom-components';
import PropTypes from 'prop-types';
import Quote from './quote';
const zenImage = require ('./assets/zen_circle.png');
const navScene = {
sceneContainer: {
flex: 1,
justifyContent: 'center',
alignItems: 'stretch'
}
}
export default class App extends Component<{}> {
// Following two lines of code were included in the errata, but cause
// an unexpected token error right on the first period below.
// Navigator.sceneStyle = {navScene.sceneContainer};
// sceneStyle={styles.sceneContainer};
render() {
return (
<Navigator
initialRoute={{ name: 'StartScreen' }}
renderScene={(route, navigator) => {
return (
<View style={styles.container}>
{/*<TouchableOpacity style={styles.button} onPress={() => {alert('I was pressed!')}}>
<Image source={zenImage} style={styles.buttonImage} />
</TouchableOpacity>
<Text style={styles.readyText}>I'm ready to relax...</Text>*/}
<Quote quoteText="Amazing quote!" quoteSource="- Great source!"/>
</View>
);
}}
/>
);
}
}
感谢您提供的任何帮助!
答案 0 :(得分:1)
卸载已安装的react-native-deprecated-custom-components组件,如下所示。
npm uninstall --save react-native-deprecated-custom-components
之后安装如下。
npm install --save https://github.com/facebookarchive/react-native-custom-components.git
现在运行您的应用程序,您的问题将得到解决。
答案 1 :(得分:1)
由于缓存的内容,大多数时候都会发生这些错误..
尝试此命令并检查:
cd android & gradlew clean & cd .. & rm -rf node_modules/ & npm cache clean --force & yarn install & react-native run-android
答案 2 :(得分:0)
遇到同样的问题,似乎他们还没有更新他们的npm包但他们的github分支有proptypes更改,把它扔进你的package.json:
"react-native-deprecated-custom-components": "github:facebookarchive/react-native-custom-components",