【Vue.js】YouTube Data API를 axios로 취득해 표시하는 샘플(Firebase·Vue CLI v4.0.4)
⭐️Mac OS Mojave 버전 10.14
⭐️Firebase Hosting
⭐️Vue CLI v4.0.4
YouTube Data API를 axios로 가져오고 표시하는 샘플
Firebase Hosting과 Vue CLI v4.0.4를 사용합니다.
↓↓ 실제로 움직여 본 동영상
htps : // 라고 해서 r. 코m/논온카 피바라/s타츠 s/1185956946630692864
🎬Vue.js🎬YouTube의 동영상🎀API요청 일람표시🎀샘플 만들어 보았다. Vue CLI (v4.0.4) Vue.js의 axios에서 API 통신 🌏하고 Firebase (FirebaseHosting)에 배포 💡💡 제대로 움직였다 - non (@nonnonkapibara)
먼저, YouTube API를 취득한다.
자세한 내용은 아래에 기재되어 있습니다.
【Vue.js】Vue.js에서 사용하기 위한 YouTube 동영상 검색 「YouTube Data API v3」의 API 키 취득
htps // t. 코/y7hw3←Rぃ
프로젝트를 만듭니다. 자세한 내용은 아래에 설명되어 있습니다.
【Vue.js】Firebase 프로젝트에서 Vue CLI v4.0.4 만들기(Firebase · Vue CLI v4.0.4)
#Vue
파일 구성
①App.vue
TOP 페이지 위의 링크에 'Search Video' 추가
#firebase
<template>
<div id="app">
<div id="nav">
<router-link to="/">Home</router-link> |
<router-link to="/about">About</router-link> |
<router-link to="/video">Search Video</router-link>
</div>
<router-view/>
</div>
</template>
②components - SearchVideo.vue
YouTube 검색 목록 (Vue.js CLI) 페이지
10월 20, 2019
<template>
<div>
<div><font size="6" color="#c71585">YouTube Search list (Vue.js CLI)</font></div>
<br>
<input size="40" v-model="keyword" placeholder="検索キーワードを入力">
<button @click="search_video">検索</button>
<table cellspacing="0" cellpadding="5" v-show="results">
<tr>
<th width="50">
<font>No</font>
</th>
<th width="200">
<font>Video</font>
</th>
<th width="700">
<font>Contents</font>
</th>
</tr>
<tr v-for="(movie, index) in results" v-bind:key="movie.id.videoId">
<!-- No -->
<td valign="top" width="50">{{ index + 1 }}</td>
<!-- Video -->
<td valign="top" width="300">
<a v-bind:href="'https://www.youtube.com/watch?v=' + movie.id.videoId">
<img width="300" height="200" v-bind:src="movie.snippet.thumbnails.medium.url">
</a>
</td>
<!-- titleとdescription -->
<td align="left" valign="top" width="700">
<font size="5" color="#c71585"><b>{{ movie.snippet.title }}</b></font>
<br>
{{ movie.snippet.description}}</td>
</tr>
</table>
</div>
</template>
<script>
import axios from 'axios';
export default {
name: "SearchVideo",
data: function() {
return {
results: null,
keyword: "nonkapibara",
order: "viewCount", // リソースを再生回数の多い順に並べます。
params: {
q: "", // 検索クエリを指定します。
part: "snippet",
type: "video",
maxResults: "20", // 最大検索数
key: "★★★★★KEYをここに入れる★★★★★"
}
};
},
props: {
msg: String
},
methods: {
search_video: function() {
this.params.q = this.keyword;
var self = this;
axios
.get("https://www.googleapis.com/youtube/v3/search", {
params: this.params
})
.then(function(res) {
self.results = res.data.items;
})
}
}
};
</script>
<style>
table {
border-collapse: collapse;
border: solid 2px #c71585;/*表全体を線で囲う*/
}
table th {
color: #fff0f5;/*文字色*/
background: #ff69b4;/*背景色*/
border: dashed 1px #c71585;
}
table td {
background: #fff0f5;
border: dashed 1px #c71585;
}
</style>
③ router - index.js
{
path: '/video',
name: 'video',
component: () => import('../views/Video.vue')
}
htps : // 코 m / 논카 피바라 / ms / 591 cdb2 아 b9 아 아 7 오 55 b9
④ views - Video.vue
htps : // 이 m/논카피바라/있어 ms/6146106c524b652f49db
<template>
<div class="app">
<SearchVideo/>
</div>
</template>
<script>
import SearchVideo from '@/components/SearchVideo.vue'
export default {
name: 'app',
components: {
SearchVideo
}
}
</script>
완성! !
Reference
이 문제에 관하여(【Vue.js】YouTube Data API를 axios로 취득해 표시하는 샘플(Firebase·Vue CLI v4.0.4)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/nonkapibara/items/d12d1aae0710bb6e748a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)