기존에 Search 컴포넌트의 apply 메소드 안에 내용을 지우고 Store movie.js 파일로 이동을 해주자

  const OMDB_KEY = '7035c60c'
          const res = await axios.get(`https://www.omdbapi.com/?apikey=${OMDB_KEY}&s=${this.title}&type=${this.type}&y=${this.year}&page=1`)
          console.log(res);

작성후 실제로 search 컴포넌트에서 apply 함수가 실제로 작동이 되야하기때문에 search 컴포넌트에서 

movie.js(모듈) 안에 actions 가 가지고있는 searchMoives 로 접근을해서 객체 구조분해로 작성해준다.

실제로 state 부분의 movies 빈배열을 수정 해줘야 하기때문에 

search 컴포넌트에서 apply 함수가 실행이 되면 movie.js 모듈안에 actions 가 가지고있는 searchMoives 함수가 실행이 될것이다. 그리고 그것을 payload 라는 인자 값으로 받아서 객체 구조분해로 title, type,numer, year 로 할당됨

그리고 실제로 omdbapi 에 요청!하고 반환 받은 값을 res 변수에 담아서  Search 에 다시 담아주면 

context.commit 함수를 통해 mutations 의 upadateState 함수에다가  배열 데이터를 전달!

forEach 문을 이용하여 state 값을 수정해준다!

 

첫번째 에러는 index.js 안에서 vuex 를 import 해오는 과정중 에러가 난것이기때문에 

오타 수정을 통하여 해결

두번째 에러도 마찬가지로 import 해오는 과정중 경로를 찾을수 없으므로 오타부분을 수정해 주었다.

 

에러 해결후 개발서버 오픈

title 이 제대로 출력되는걸 확인!

그다음으로 아까 다루지 않았던 totalResults 를 확인해보겠다.

'Vue.js 3' 카테고리의 다른 글

조건문 반복문  (0) 2022.10.20
영화 검색 사이트 예제 -5  (0) 2022.10.06
영화 검색 사이트 예제 -3  (0) 2022.09.03
영화 검색 사이트 예제 -2  (0) 2022.08.31
영화 검색 사이트 예제 -1  (0) 2022.08.31

+ Recent posts