Browse Source

fix: workflows pagination not saved

Ahmad Kholid 2 years ago
parent
commit
1677230e61

+ 11 - 1
src/components/newtab/workflows/WorkflowsLocal.vue

@@ -53,7 +53,11 @@
     >
       <div>
         {{ t('components.pagination.text1') }}
-        <select v-model="pagination.perPage" class="p-1 rounded-md bg-input">
+        <select
+          :value="pagination.perPage"
+          class="p-1 rounded-md bg-input"
+          @change="onPerPageChange"
+        >
           <option v-for="num in [18, 32, 64, 128]" :key="num" :value="num">
             {{ num }}
           </option>
@@ -136,6 +140,7 @@ const props = defineProps({
     default: 18,
   },
 });
+const emit = defineEmits(['update:perPage']);
 
 const { t } = useI18n();
 const dialog = useDialog();
@@ -230,6 +235,11 @@ const pinnedWorkflows = computed(() => {
   });
 });
 
+function onPerPageChange(event) {
+  const { value } = event.target;
+  pagination.perPage = +value;
+  emit('update:perPage', +value);
+}
 function toggleDisableWorkflow({ id, isDisabled }) {
   workflowStore.update({
     id,

+ 1 - 1
src/newtab/pages/workflows/index.vue

@@ -255,8 +255,8 @@
           </ui-tab-panel>
           <ui-tab-panel value="local">
             <workflows-local
+              v-model:per-page="state.perPage"
               :search="state.query"
-              :per-page="state.perPage"
               :folder-id="state.activeFolder"
               :sort="{ by: state.sortBy, order: state.sortOrder }"
             />