javascript - 请问我该如何在 React native 中处理这个错误?
问题描述
**我有这个代码
import React from 'react'
import { StyleSheet, View, ActivityIndicator ,ScrollView,Text,Image} from 'react-native'
import { GetFilmDetailFromApi,GetImageFromApi } from '../API/tmdbApi'
import moment from 'moment'
import numeral from 'numeral'
class FilmDetail extends React.Component {
constructor(props) {
super(props)
this.state = {
film: undefined,
isLoading: true
}
}
componentDidMount() {
GetFilmDetailFromApi(this.props.navigation.state.params.idFilm).then(data => {
this.setState({
film: data,
isLoading: false
})
})
}
render() {
return (
<View style={styles.main_container}>
{this._displayLoading()}
{this._displayFilm()}
</View>
)
}
}
export default FilmDetail
** 他们告诉我 this.props.navigation.state.paramas.idFilm 是未定义的,请有人可以帮助我尽快找到解决方案,函数 GetFilmDetailFromApi 在另一个文件中声明,这里是代码**
const API_TOKEN = "aec60a6b4c98027dghfgjgjfdgjdf0a021";
// Récupération du détail d'un film
export function GetFilmDetailFromApi (id) {
return fetch('https://api.themoviedb.org/3/movie/' + id + '?api_key=' + API_TOKEN + '&language=fr')
.then((response) => response.json())
.catch((error) => console.error(error));
}
解决方案
我看到你这行代码“从'../API/tmdbApi'导入{GetFilmDetailFromApi,GetImageFromApi}”,你能显示这个文件代码吗?“GetFilmDetailFromApi”来自这个文件。也许应该检查一下。
推荐阅读
- node.js - 命令 'grunt' 不会生成文件夹: dist
- architecture - 用于实时扫描的 API 拦截器
- java - 将 Button 中的图标大小调整为与 Buttons 大小一样大(+ 使用 LayoutManager)并使 Font 与 Buttons 大小一样大
- laravel - 如何使用 Laravel 5.8 在 Sqlite3 中强制区分大小写列
- c++ - 我可以为数组的所有成员添加一个值吗
- hyperledger-fabric - 如何在centOS 上安装#hyperledger-fabric 设置?
- sql - 删除 jsonb 列中深度嵌套数组中的元素 - Postgres
- c# - 如何接收带有 application-json 内容类型和边界的正文附件?
- c# - 仅从 API 返回有用的字段
- ios - prepareForSegue 没有调用容器视图