diff --git a/src/api/request.js b/src/api/request.js index f99ae242..f1d065e4 100644 --- a/src/api/request.js +++ b/src/api/request.js @@ -80,68 +80,68 @@ export function useBoeApiPage(_url, params = {}, config = { }; } -// export function useBoeApi(_url, params = {}, config = { -// init: true, -// result: res => res.result, -// }) { -// -// const state = reactive({ -// data: [], -// loading: false, -// }); -// watch(() => params, () => { -// fetch(); -// }); -// -// function fetch() { -// state.loading = true; -// return boeRequest(_url, params).then(r => { -// state.data = config.result(r); -// state.loading = false; -// }); -// } -// -// config.init && fetch(); -// return { -// ...toRefs(state), -// fetch, -// }; -// } +export function useBoeApi(_url, params = {}, config = { + init: true, + result: res => res.result, +}) { -// export function useBoeUserListPage(_url, params = {}, init = true) { -// -// const state = reactive({ -// data: [], -// loading: false, -// total: 0, -// totalPage: 0, -// page: 1, -// ...params -// }); -// -// watch(() => params.keyword, throttle(fetch, 600)); -// watch(() => params.page, fetch); -// -// function fetch() { -// state.loading = true; -// if (!params.keyword) { -// state.loading = false; -// return; -// } -// return boeRequest(_url, params).then(r => { -// state.data = params.page === 1 ? r.result.userInfoList : [...state.data, ...r.result.userInfoList]; -// state.totalPage = r.result.totalPage; -// state.total = r.result.totalElement; -// state.loading = false; -// }); -// } -// -// init && fetch(); -// return { -// ...toRefs(state), -// fetch, -// }; -// } + const state = reactive({ + data: [], + loading: false, + }); + watch(() => params, () => { + fetch(); + }); + + function fetch() { + state.loading = true; + return boeRequest(_url, params).then(r => { + state.data = config.result(r); + state.loading = false; + }); + } + + config.init && fetch(); + return { + ...toRefs(state), + fetch, + }; +} + +export function useBoeUserListPage(_url, params = {}, init = true) { + + const state = reactive({ + data: [], + loading: false, + total: 0, + totalPage: 0, + page: 1, + ...params + }); + + watch(() => params.keyword, throttle(fetch, 600)); + watch(() => params.page, fetch); + + function fetch() { + state.loading = true; + if (!params.keyword) { + state.loading = false; + return; + } + return boeRequest(_url, params).then(r => { + state.data = params.page === 1 ? r.result.userInfoList : [...state.data, ...r.result.userInfoList]; + state.totalPage = r.result.totalPage; + state.total = r.result.totalElement; + state.loading = false; + }); + } + + init && fetch(); + return { + ...toRefs(state), + fetch, + }; +} export function useNewRowsPageNoInit(_url, params) { const state = reactive({ data: [],