fix. gameData 개별 속성 구조분해
This commit is contained in:
@@ -1,32 +1,29 @@
|
||||
import type { PageDataValue } from '#layers/types/api/pageData'
|
||||
|
||||
export const usePageDataStore = defineStore('pageData', () => {
|
||||
const pageData = ref<PageDataValue | null>(null)
|
||||
const pageLayoutType = ref<'default' | 'promotion' | null>(null)
|
||||
const pageName = ref<string | null>(null)
|
||||
const pageNameEn = ref<string | null>(null)
|
||||
// 초기 상태를 함수로 정의
|
||||
const getInitialState = () => ({
|
||||
pageData: null as PageDataValue | null,
|
||||
pageLayoutType: null as 'default' | 'promotion' | null,
|
||||
pageName: null as PageDataValue['page_name'] | null,
|
||||
pageNameEn: null as PageDataValue['page_name_en'] | null,
|
||||
})
|
||||
|
||||
const state = reactive(getInitialState())
|
||||
|
||||
const setPageData = (response: PageDataValue) => {
|
||||
clearPageData()
|
||||
|
||||
pageData.value = response
|
||||
pageLayoutType.value = getLayoutType(pageData.value)
|
||||
pageName.value = pageData.value?.page_name
|
||||
pageNameEn.value = pageData.value?.page_name_en
|
||||
state.pageData = response
|
||||
state.pageLayoutType = getLayoutType(state.pageData)
|
||||
state.pageName = state.pageData?.page_name
|
||||
state.pageNameEn = state.pageData?.page_name_en
|
||||
}
|
||||
|
||||
const clearPageData = () => {
|
||||
pageData.value = null
|
||||
pageLayoutType.value = null
|
||||
pageName.value = null
|
||||
pageNameEn.value = null
|
||||
Object.assign(state, getInitialState())
|
||||
}
|
||||
|
||||
return {
|
||||
pageData,
|
||||
pageLayoutType,
|
||||
pageName,
|
||||
pageNameEn,
|
||||
...toRefs(state),
|
||||
setPageData,
|
||||
clearPageData,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user