game.js
import React from 'react';
import PropTypes from 'prop-types';
import {View,Text,StyleSheet} from 'react-native';
这是我的代码,这是警告this prop randomNumberCount is marked as required in Game ,but its value undefined
。如何解决此警告?
class Game extends React.Component {
static propTypes = {
randomNumberCount: PropTypes.number.isRequired,
};
randomNumbers=Array
.from({length:this.props.randomNumberCount})
.map(() =>1+Math.floor(10*Math.random()));
target=this.randomNumbers
.slice(0,this.props.randomNumberCount-2)
.reduce((acc,curr)=>acc+curr,0);
render() {
return (
<View style={styles.container}>
<Text style={styles.target}>{this.target}</Text>
{this.randomNumbers.map((randomNumber,index)=>
<Text key={index}>{randomNumber}</Text>
)}
</View>
);
}
}
此警告是因为您已按照原型中的要求标记 RandomNumberCount 。因此,当您使用此组件时,您需要强制通过Prop RandomnumberCount 。或者,您可以从原型声明中删除 .isrequired 。
您可以声明 RandomnumberCount 的默认值为
static defaultProps = {
randomNumberCount: dafaultValue
};
供参考:本机组件