我已经从RN 0.54升级到0.57,由于使用了React Native Elements,我的应用程序已经大大减少了.
我在TextInput
组件上使用了他们的错误功能,这些组件基本上启用了道具,您可以设置错误消息的样式并设置错误消息.非常方便,但升级已打破这些,我现在迎接这个错误:
所以我删除了该代码并且错误消失了,但是当我运行此代码时,我仍然收到问题:
{ this.state.event.cards[i].fields[j].error &&
<Text style={{ color: '#e74c3c', fontSize: 14, paddingLeft: 5 }}>
{this.state.event.cards[i].fields[j].error}
</Text>
}
Run Code Online (Sandbox Code Playgroud)
当我开始输入文本输入时,它将我的错误消息设置为空字符串,因此如果返回错误,键入该字段将使错误消失.
一旦this.state.event.cards[i].fields[j].error
成为字符串,我就会收到此错误.但是你可以看到我检查是否存在错误,然后我只是显示错误,或至少尝试.
另一组眼睛会对此感激不尽.
我是反应新手。如果有人能解释这个问题那就太好了。这个问题已经有了答案,但我仍然很困惑。
import React from 'react' ;
import Card from './Card.js';
const CardList = ({Friends}) =>{
const Cardcomponent = Friends.map((user , i) => {
return(
<div>
<Card id={Friends[i].id} name={Friends[i].name} username={Friends[i].username} instagram={Friends[i].instagram} />
</div>
)
})
return(
<div>
{Cardcomponent}
</div>
)
}
export default CardList ;
Run Code Online (Sandbox Code Playgroud)
我收到错误:“对象作为 React 子项无效(找到:带有键 {} 的对象)。如果您打算渲染子项集合,请改用数组。”
我有以下代码:
import ReactDom from 'react-dom';
import React from 'react';
import {render} from 'react-dom';
import $ from 'jquery';
class App extends React.Component {
constructor(props) {
super(props);
this.state = {
data: '',
loading: true
}
}
componentDidMount () {
const newsfeedURL = 'https://s3-eu-west-1.amazonaws.com/streetlife-coding-challenge/newsfeed.json';
$.get(newsfeedURL, function(result) {
this.setState({
data: JSON.parse(result),
loading: false
});
console.log(typeof this.state.data.messages);
}.bind(this));
}
render () {
let content;
if (this.state.loading === false && this.state.data.messages) {
content = Object.keys(this.state.data.messages).map(key => {
return <div key={key}>Key: {key}, Value: {this.state.data.messages[key]}</div>;
})
} else …
Run Code Online (Sandbox Code Playgroud) 我正在尝试实现一个简单的功能,onPress
即应该添加一个按钮placeName
来放置数组并将其显示在视图中,但我似乎收到错误,请帮助
这是我的代码,
export default class App extends Component{
state = {
placeName: "",
places: []
}
onChangeName = (val) => {
this.setState({
placeName: val
})
}
placeSubmitHandler = () => {
if(this.state.placeName === "") {
alert('enter something');
} else {
this.setState(prevState => {
return {
places: prevState.places.concat(prevState.placeName)
}
})
}
}
render() {
const placesOutput = this.state.places.map((place, i) => (
<Text key={i}>{place}</Text>
));
return (
<View style={styles.container}>
<View style={styles.inputContainer}>
<TextInput
style={{width: 300}}
value={this.state.textInput}
placeholder='enter anything'
onChange={this.onChangeName} …
Run Code Online (Sandbox Code Playgroud)