이번에는 locallhost:8081에 springboot의 id값에 따른
board(글)을 불러오도록 해볼 예정이다.
확인을 함으로써 spring과 vue의 연동이 되는것을 확인 해 볼 수 있다.
Home.vue파일에서 작업을 해볼 예정.
우선 router디렉토리의 index.js파일 수정을 하였다.
import Vue from 'vue'
import VueRouter from "vue-router";
import App from "@/App";
import Board from "@/views/Board";
import Home from "@/views/Home";
Vue.use(VueRouter)
const routes =[
{
path:'/',
name:'App',
component:App
},
{
path:'/Board',
name:'Board',
component:Board
},
{
path:'/Home',
name:'Home',
component:Home
}
]
const router = new VueRouter({
routes
})
export default router
Home.vue (front end)
<template>
<v-container>
<v-card style="width: 30%">
<v-text-field v-model="b1" label="Board id"></v-text-field>
<v-btn
outlined
@click="button"
>
Click
</v-btn>
<p>{{a}}</p>
</v-card>
</v-container>
</template>
<script>
export default {
name: 'App',
data: () => ({
b1: '',
a: ''
}),
methods: {
button() {
let id = this.b1
this.$axios.get('board/'+id ).then(result => {
console.log(result.data)
this.a = result.data
})
}
}
}
</script>
get방식으로 this.axios로 통신을 한다.
주소부분이 board/의 id값과
- get방식으로 this.axios로 통신을 한다.
- ''board/'는 보내는 주소이다. Spring의 주소와 일치하여야 한다.
- board 뒤에 +id값을 붙여 id값에 맞는 데이터를 불러오도록 하였다.
- .then(result => { }) : 통신을 보낸 다음 데이터의 결과를 볼 수 있게 한다.
BoardController.java (backend)
Controller의 첫부분에 /board로 RequestMapping을 하였다.
서버를 구동하고 확인을 해보니 정상적으로 board의 데이터를 불러왔다!
Board id = 1
Board id = 3
'Vue.js' 카테고리의 다른 글
vue.js [axios를 통해 데이터 불러오기 3] (0) | 2022.01.14 |
---|---|
vue.js [axios를 통해 데이터 불러오기 2] (0) | 2022.01.14 |
vue.js [axios 설치 및 vuetify설치] (0) | 2022.01.03 |
vue.js [router모듈 설치 및 사용] (0) | 2021.12.20 |
vue.js [홈페이지 기본 레이아웃 만들기] (0) | 2021.12.20 |