한 주 중 가장 많은 시간을 할애했던 axios!
axios는 Promise 기반의 자바스크립트 비동기 처리방식을 사용한다.
$ npm install --save axios
지금은 post만 사용하고 있는데,
먼저 초기세팅 때 만들었던 api 폴더 안의 index.js에 정의해준다.
import axios from 'axios'
const instance = axios.create({
baseURL: "http://111.11:8080",
});
export const listPage = {
list() {
return instance.post("나머지 주소", {})
}
}
내가 적용해야 하는 파일에도 정의해준다.
import { listPage } from "../api/index";
async fetchData() {
window.scrollTo(0, 0);
// listpage는 api -> index.js에서 받아온 변수고, list는 해당 변수 안에 있던 함수.
const res = await listPage.list();
// 초기값으로 설정한 items에 res.data.object를 담아준다.
this.items = await res.data.result;
}
api를 formdata 형식으로 보내줄 경우에는 적용해야 하는 파일에
formdata의 key와 value값을 추가해줘야한다.
import axios from 'axios'
const instance = axios.create({
baseURL: "http://111.11:8080",
});
export const listPage = {
list(formData) {
return instance.post("나머지 주소", formData)
}
}
async fetchData() {
let formData = new FormData();
formData.append(key, value);
const res = await listPage.list(formData);
this.items = res.data.result;
}