Javascript useState与接口-反应本机类型脚本
有一种方法可以将useState与接口类型一起使用吗 这就是我想做的:Javascript useState与接口-反应本机类型脚本,javascript,typescript,react-native,expo,use-state,Javascript,Typescript,React Native,Expo,Use State,有一种方法可以将useState与接口类型一起使用吗 这就是我想做的: const [movie, setMovie] = useState(null); [...] .then((responseJson) => { var movie: Movie = { id : id, title: responseJson.original_title, backdrop:
const [movie, setMovie] = useState(null);
[...]
.then((responseJson) => {
var movie: Movie = {
id : id,
title: responseJson.original_title,
backdrop: "https://image.tmdb.org/t/p/original" + responseJson.backdrop_path,
note: responseJson.vote_average,
numberNote: responseJson.vote_count,
year: responseJson.release_date,
runtime: responseJson.runtime,
genre: responseJson.genres,
plot: responseJson.overview,
};
setMovie(movie);
})
但是在类型上有错误
我的界面:
interface Movie {
id: number;
title: string;
backdrop: string;
note: number;
numberNote: number,
year: number,
runtime: number,
genre: {id: number, name: string}[],
plot: string
}
根据这篇文章:
我可以尝试这样做:
const [movie, setMovie] = useState<Movie>({id: 0,
title: "",
backdrop: "",
note: 0,
numberNote: 0,
year: 0,
runtime: 0,
genre: [{id: 0, name: ""}],
plot: ""});
const[movie,setMovie]=useState({id:0,
标题:“,
背景:“,
注:0,
数字注:0,
年份:0,
运行时:0,
类型:[{id:0,名称:“}],
绘图:“}”;
但它看起来并不干净,我认为这不是将随机值置于第一个状态的好方法。您可以用以下方式暗示状态类型:
const[movie,setMovie]=useState(null);
您可以通过以下方式暗示状态类型:
const[movie,setMovie]=useState(null);
这是否回答了您的问题?是和否。。。我将更新我的帖子,解释为什么你可以使用联合类型(null)这是否回答了你的问题?是和否。。。我将更新我的帖子,解释为什么可以使用联合类型(null)