React Native and APIs
I have access to OpenAI's API. How can I create a web application
There are plenty of examples on GitHub. I haven’t looked for the most recent projects, but here is an early demo: https://github.com/shreyashankar/gpt3-sandbox
More on reddit.comVideos
First, there is a small typo in your example. In your component's constructor you specify a loading state variable, but in your render function you're using isLoading. Second, you're not mapping over your data correctly. It just looks like you need to specify what aspects of each movie you care about in your render function. JSX can't handle displaying a full javascript object which is what <Text>{val}</Text> ends up being in your code. There are a few ways you can fix this. It's very common to just map over your results and display them directly.
export default class App extends Component {
constructor(props) {
super(props);
this.state = {
loading: true,
dataSource: []
};
}
componentDidMount() {
return fetch("https://reactnative.dev/movies.json")
.then(response => response.json())
.then(responseJson => {
this.setState({
loading: false,
dataSource: responseJson.movies
});
})
.catch(error => console.log(error));
}
render() {
const { loading, dataSource } = this.state;
if (loading) {
return (
<View style={styles.container}>
<ActivityIndicator size="large" color="#0c9" />
</View>
);
}
return dataSource.map((movie, index) => (
<View key={movie.id} style={styles.item}>
<Text>{movie.title}</Text>
</View>
));
}
}
You could also pull this out to a renderMovies method, which might help since you are trying to display these in a styled container.
export default class App extends Component {
constructor(props) {
super(props);
this.state = {
loading: true,
dataSource: []
};
}
componentDidMount() {
return fetch("https://reactnative.dev/movies.json")
.then(response => response.json())
.then(responseJson => {
this.setState({
loading: false,
dataSource: responseJson.movies
});
})
.catch(error => console.log(error));
}
renderMovies() {
const { dataSource } = this.state;
return dataSource.map((movie, index) => (
<View key={movie.id} style={styles.item}>
<Text>{movie.title}</Text>
</View>
));
}
render() {
const { loading } = this.state;
if (loading) {
return (
<View style={styles.container}>
<ActivityIndicator size="large" color="#0c9" />
</View>
);
}
return (
<View style={styles.container}>
{this.renderMovies()}
</View>
);
}
}
I have used Object.values() to restructure the object into an array
componentDidMount() {
return fetch("https://reactnative.dev/movies.json")
.then((response) => response.json())
.then((responseJson) => {
this.setState({
loading: false,
dataSource: Object.values(responseJson.movies), //changed this
});
})
.catch((error) => console.log(error));
}
Hello Friends
I was thinking a approach to connect my react native app with MySQL database with rest / graphql api.
My thinking here is to perform CRUD operations using these API (anyone of these two). The app I am planing to develop here is fully online, it won't work if user is not connected to internet, the screen simply show a error message like - Connect to internet.
Now I have read many articles on medium and watched videos on YouTube - how to connect rest api to get and upload data in react native app.
I am wondering here or curious to know - if what I am thinking is as per the industry standard, are other people or companies or startups are already doing? what I am thinking.
Is it a good idea?
Also I want to add social authentication like Facebook and Gmail to register users, is that achievable with this approach.
I know these are lots of questions I am asking, but the reason is I want to create a road map for my approach, so that I don't waste my time moving back and forth to find a correct approach.
Please share your expert advises.
Thank you :)