Как получить все фильмы по искомому фильму в Omdbapi React Native

Я только начинаю изучать React Native, и это мой первый проект, в котором я пытаюсь получить фильмы из API OMDB через json.

Дело в том, что я хочу получить все фильмы из базы данных, чтобы упростить это, и моя проблема в том, что у меня нет идеи, как я могу получить все фильмы, я создал api, который извлекает только фильмы, связанные с "звездой", потому что я использую " star "в качестве типа поиска в этой ссылке api, размещенной ниже, так что есть ли кто-нибудь, кто может помочь мне получить все фильмы? Спасибо..

ССЫЛКА НА API Я ИСПОЛЬЗУЮ ДЛЯ ПОЛУЧЕНИЯ ИЗ OMDBAPI: http://www.omdbapi.com/?s=star&apikey=480344f1&r=json

Я также прикрепил файлы, как я получил, и все работает нормально ..

App.js

import React from 'react';
import DetailsScreen from './screens/DetailsScreen'
import SearchScreen from './screens/SearchScreen';

import { createStackNavigator } from 'react-navigation';

const StackNavigator = createStackNavigator({
  SearchStack: SearchScreen,
  InfoStack: DetailsScreen,
},
  {
    initialRouteName: 'SearchStack',
  },
);

export default class App extends React.Component {
  render() {
    return (
      <StackNavigator />
    );
  }
}

Api.js

export const fetchMovies = async () => {

 const response = await 
   fetch('http://www.omdbapi.com/?s=star&apikey=480344f1&r=json')
     const result = await response.json()
       return result
}

SearchScreen.js

export default class SearchScreen extends React.Component {
    static navigationOptions = {
        headerTitle: 'Home'
    }

    constructor(props) {
        super(props);

        this.state = {
            isLoading: true,
            search: '',
            movies: [],
        }
    }

    /*componentDidMount() {
        this.getMovies()
    } */

    getMovies = async (text) => {
        const result = await fetchMovies(text)
        this.setState({
            movies: result.Search,
        });
    }

    renderItem = item => {
        console.info('We are Rendering ...' + item);
        return (
            <TouchableOpacity
                style = {{ alignItems: 'center', flexDirection: 'row', padding: 10,}}
                onPress = {() => { this.props.navigation.navigate('InfoStack') }}>
                <Image style = {{ height: 50, width: 50, justifyContent: 'center' }} source = {{ uri: item.item.Poster }} />
                <View style = {{ flexDirection: "column", marginLeft: 12,}}>
                <Text style = {{ fontSize: 14, fontWeight: 'bold', justifyContent: 'center' }}>{item.item.Title}</Text>
                <Text style = {{ fontSize: 14, justifyContent: 'center' }}>{item.item.imdbID}</Text>
                </View>
            </TouchableOpacity>
        );
    }

    separateItem = () => {
        return (
            <View style = {{ height: 1, width: '100%', backgroundColor: 'black' }}>
            </View>
        );
    }

    render() {
        console.info("Fetched Movies in backend" + this.state.movies);
        return (

            <View style = {styles.searchBox}>
                <SearchBar
                    lightTheme
                    placeholder = "Search Here"
                    onChangeText = {text => this.getMovies(text)} />


                <View style = {styles.container}>
                    <FlatList
                        data = {this.state.movies}
                        renderItem = {this.renderItem}
                        keyExtractor = {(item, index) => index}
                        ItemSeparatorComponent = {this.separateItem}
                    />
                </View>
            </View>
        );
    }
}
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
0
2 107
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Привет, парень. Я только что получил ответ на эту проблему от своего старшего брата.

Это так просто, что я просто изменяю. Я просто создаю параметр в моей функции fetchMovies под названием "searchMovie" и передаю его по ссылке api, и все, когда я запускаю проект и ищу любое слово, он показывает мне результаты, соответственно, мой искомый текст имеет посмотрите на код ниже. Спасибо....!

Api.js

export const fetchMovies = async (searchMovie) => {

     const response = await 
       fetch('http://www.omdbapi.com/?s='+ searchMovie +'&apikey=480344f1&r=json')
         const result = await response.json()
           return result
    }

Другие вопросы по теме