通过静态属性传递 API 调用详细信息



我正在构建一个需要几个不同 API 调用的小型 Vue.js 应用程序。我正在使用 tmdb api,我想在我的应用程序中拥有热门、即将上映和评分最高的电影部分。所有这些都使用相同的调用,即(在这种情况下为流行(:

https://api.themoviedb.org/3/movie/popular?api_key=api_key&language=en-US&page=1

(流行可以替换为top_rated或即将推出(

我已经为上述调用创建了组件,在我的主页上,我将静态 props 传递给这个组件以获取我想要的数据:

<Movies type="popular"/>
<Movies type="upcoming"/>
<Movies type="top_rated"/>

我接受道具,然后将其放在组件中获取的链接中,如下所示:

https://api.themoviedb.org/3/movie/${this.type}?api_key=api_key&language=en-US&page=1

这是正确的方法,还是我应该把所有在Promise.all中流行的,即将到来的和最受好评的电话都放在我的主页上?此外,我仅在主页上使用这些,而在应用程序中的其他任何地方都不使用这些。

编辑:我认为在组件中执行此操作的主要好处是我只需要使用一个for循环而不是3。仍然不确定这是否是正确的方法。

我认为这是个好方法。每个组件都在触发自己的请求,并在独立于组件的其他实例解析该请求时呈现(更新(。

使用Promise.all没有意义 - 同时获得来自所有 3 个调用的数据是否重要?不。。。

你做对了:)

最新更新