diff --git a/src/views/board/BoardWrite.vue b/src/views/board/BoardWrite.vue index 30d432a..94d1d9f 100644 --- a/src/views/board/BoardWrite.vue +++ b/src/views/board/BoardWrite.vue @@ -22,7 +22,7 @@
@@ -30,18 +30,19 @@ class="form-check-input" type="radio" :id="`category-${index}`" - :value="index" - v-model="category" + :value="category.CMNCODVAL" + v-model="categoryValue" />
+
카테고리를 선택해주세요.
-
+
{ + try { + const response = await axios.get('board/categories'); + categoryList.value = response.data.data; + } catch (error) { + console.error('카테고리 불러오기 오류:', error); + } +}; + +onMounted(() => { + fetchCategories(); +}); const goList = () => { router.push('/board'); @@ -120,10 +135,11 @@ const goList = () => { const write = async () => { titleAlert.value = !title.value; - passwordAlert.value = category.value === 1 && !password.value; + passwordAlert.value = categoryValue.value === 300102 && !password.value; contentAlert.value = !content.value; + categoryAlert.value = !categoryValue.value; - if (titleAlert.value || passwordAlert.value || contentAlert.value || !isFileValid.value) { + if (titleAlert.value || passwordAlert.value || contentAlert.value || categoryAlert.value || !isFileValid.value) { return; } @@ -131,8 +147,8 @@ const write = async () => { const boardData = { LOCBRDTTL: title.value, LOCBRDCON: $common.deltaAsJson(content.value), - LOCBRDPWD: category.value === 1 ? password.value : null, - LOCBRDTYP: category.value === 1 ? 'S' : 'F', + LOCBRDPWD: categoryValue.value === 300102 ? password.value : null, + LOCBRDTYP: categoryValue.value }; const { data: boardResponse } = await axios.post('board', boardData);