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);