11<script setup lang="ts">
22import { ref , watch } from ' vue'
3- import { API , QueryObject } from ' ./net'
3+ import { API } from ' ./net'
4+ import type { QueryObject } from ' ./net'
45import type { Store } from ' ./store'
56import type { Pair } from ' ./types'
67import { ElMessage } from ' element-plus'
@@ -12,9 +13,11 @@ import { Refresh, Document } from '@element-plus/icons-vue'
1213const stores: Ref <Store []> = ref ([])
1314const kind = ref (' ' )
1415const store = ref (' ' )
16+ const query = ref ({
17+ offset: 0 ,
18+ limit: 10
19+ } as QueryObject )
1520const sqlQuery = ref (' ' )
16- const queryOffset = ref (0 )
17- const queryLimit = ref (10 )
1821const queryResult = ref ([] as any [])
1922const queryResultAsJSON = ref (' ' )
2023const columns = ref ([] as string [])
@@ -177,16 +180,12 @@ const executeQuery = async () => {
177180}
178181const executeWithQuery = async (sql : string ) => {
179182 let success = false
180- const query = {
181- store: store .value ,
182- key: queryDataMeta .value .currentDatabase ,
183- sql: sql ,
184- offset: queryOffset .value ,
185- limit: queryLimit .value
186- } as QueryObject
183+ query .value .store = store .value
184+ query .value .key = queryDataMeta .value .currentDatabase
185+ query .value .sql = sql
187186
188187 try {
189- const data = await API .DataQueryAsync (query );
188+ const data = await API .DataQueryAsync (query . value );
190189 switch (kind .value ) {
191190 case ' atest-store-orm' :
192191 case ' atest-store-cassandra' :
@@ -218,7 +217,7 @@ const executeWithQuery = async (sql: string) => {
218217 return success
219218}
220219const nextPage = () => {
221- queryOffset .value += queryLimit .value
220+ query .value . offset += query .value . limit
222221 executeQuery ()
223222}
224223 </script >
@@ -280,12 +279,12 @@ const nextPage = () => {
280279 </el-row >
281280 <el-row :gutter =" 10" v-if =" kind === 'atest-store-elasticsearch'" >
282281 <el-col :span =" 10" >
283- <el-input type =" number" v-model =" queryOffset " >
282+ <el-input type =" number" v-model =" query.offset " >
284283 <template #prepend >Offset</template >
285284 </el-input >
286285 </el-col >
287286 <el-col :span =" 10" >
288- <el-input type =" number" v-model =" queryLimit " >
287+ <el-input type =" number" v-model =" query.limit " >
289288 <template #prepend >Limit</template >
290289 </el-input >
291290 </el-col >
0 commit comments