fix: reslove survey list not initializing error when enter search keywords
This commit is contained in:
parent
29e7675ada
commit
0521c88e79
@ -27,7 +27,7 @@ export default function ListTable() {
|
|||||||
}, [pathname])
|
}, [pathname])
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!session.isLoggedIn || !('data' in surveyList)) return
|
if (!session.isLoggedIn || isLoadingSurveyList) return
|
||||||
if ('count' in surveyList && surveyList.count > 0) {
|
if ('count' in surveyList && surveyList.count > 0) {
|
||||||
if (offset > 0) {
|
if (offset > 0) {
|
||||||
setHeldSurveyList((prev) => [...prev, ...surveyList.data])
|
setHeldSurveyList((prev) => [...prev, ...surveyList.data])
|
||||||
@ -45,14 +45,12 @@ export default function ListTable() {
|
|||||||
router.push(`/survey-sale/${id}`)
|
router.push(`/survey-sale/${id}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: 로딩 처리 필요
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<SearchForm memberRole={session?.role ?? ''} userNm={session?.userNm ?? ''} />
|
<SearchForm memberRole={session?.role ?? ''} userNm={session?.userNm ?? ''} />
|
||||||
<div className="sale-frame">
|
<div className="sale-frame">
|
||||||
{heldSurveyList.length > 0 ? (
|
{heldSurveyList.length > 0 ? (
|
||||||
<ul className="sale-list-wrap">
|
<ul className="sale-list-wrap">
|
||||||
{heldSurveyList.map((survey) => (
|
{heldSurveyList.map((survey) => (
|
||||||
<li className="sale-list-item cursor-pointer" key={survey.id} onClick={() => handleDetailClick(survey.id)}>
|
<li className="sale-list-item cursor-pointer" key={survey.id} onClick={() => handleDetailClick(survey.id)}>
|
||||||
<div className="sale-item-bx">
|
<div className="sale-item-bx">
|
||||||
@ -67,18 +65,18 @@ export default function ListTable() {
|
|||||||
<div className="sale-item-update">{new Date(survey.uptDt).toLocaleString()}</div>
|
<div className="sale-item-update">{new Date(survey.uptDt).toLocaleString()}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
))}
|
))}
|
||||||
</ul>
|
</ul>
|
||||||
) : (
|
) : (
|
||||||
<div className="compliace-nosearch">
|
<div className="compliace-nosearch">
|
||||||
<span className="mb10">作成された物件はありません。</span>
|
<span className="mb10">作成された物件はありません。</span>
|
||||||
</div>
|
|
||||||
)}
|
|
||||||
<div className="sale-edit-btn">
|
|
||||||
<LoadMoreButton hasMore={hasMore} onLoadMore={() => setOffset(offset + 10)} />
|
|
||||||
</div>
|
</div>
|
||||||
|
)}
|
||||||
|
<div className="sale-edit-btn">
|
||||||
|
<LoadMoreButton hasMore={hasMore} onLoadMore={() => setOffset(offset + 10)} />
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,7 +6,7 @@ import { useState } from 'react'
|
|||||||
|
|
||||||
export default function SearchForm({ memberRole, userNm }: { memberRole: string; userNm: string }) {
|
export default function SearchForm({ memberRole, userNm }: { memberRole: string; userNm: string }) {
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const { setSearchOption, setSort, setIsMySurvey, setKeyword, isMySurvey, keyword, searchOption, sort } = useSurveyFilterStore()
|
const { setSearchOption, setSort, setIsMySurvey, setKeyword, reset, isMySurvey, keyword, searchOption, sort } = useSurveyFilterStore()
|
||||||
const [searchKeyword, setSearchKeyword] = useState(keyword)
|
const [searchKeyword, setSearchKeyword] = useState(keyword)
|
||||||
const [option, setOption] = useState(searchOption)
|
const [option, setOption] = useState(searchOption)
|
||||||
|
|
||||||
@ -15,6 +15,7 @@ export default function SearchForm({ memberRole, userNm }: { memberRole: string;
|
|||||||
alert('2文字以上入力してください')
|
alert('2文字以上入力してください')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
reset()
|
||||||
setKeyword(searchKeyword)
|
setKeyword(searchKeyword)
|
||||||
setSearchOption(option)
|
setSearchOption(option)
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user