將分頁參數(shù)page, pageSize放入URL中谱轨,然后讀取URL參數(shù)同步到ProTable遇到的問題

期待行為:當我們進行改變頁碼以及每頁的條數(shù)時將參數(shù)放入url双仍,當刷新頁面之后保留刷新前的參數(shù)刹孔。

import React, { useEffect, useRef } from "react";
import { ActionType, ProFormInstance, ProTable } from "@ant-design/pro-components";
import { NumberParam, QueryParamConfig, StringParam, useQueryParams, withDefault } from "use-query-params";

export default function Index() {
  const actionRef = useRef<ActionType>();
  const formRef = useRef<ProFormInstance>();

  const [query, setQuery] = useQueryParams({
    page: withDefault(NumberParam, 1),
    pageSize: withDefault(NumberParam, 10),
  });

  const handleQuery = (params) => {
    setQuery({
      page: params.current,
      pageSize: params.pageSize,
    });
  };

  const handleReset = () => {
    actionRef.current?.reset?.();
  };

  return (
    <ProTable
      actionRef={actionRef}
      formRef={formRef}
      columns={columns}
      rowKey="id"
      request={handleQuery}
      onReset={handleReset}
      form={{
        initialValues: {
          current: query?.page,
          pageSize: query.pageSize,
        },
        submitter: {
          render:(props, doms) => [...doms.reverse()]
        }
      }}
      pagination={{
        defaultCurrent: 1,
        defaultPageSize: 10,
        total: data?.totalSize,
        showSizeChanger: true,
        onChange: (page, pageSize) => {
           setQuery({
              ...query,
              page,
              pageSize,
          })
        },
      }}
      dataSource={[]}
    />
  )
}

頁面大概如下

image.png

當我們刷新頁面并沒有把url上面的page,pageSize同步到ProTable中原因是我們寫了

pagination={{
 pageSize: query?.pageSize,
 current: query?.page,
}}

這樣寫并沒有把url上面的page,pageSize寫入到ProTable中荡短,正確的寫法應(yīng)該是這樣

  1. ProTable
form={{
  initialValues: {
    current: query?.page,
    pageSize: query.pageSize,
  },
}}
  1. 使用useEffect同步
  useEffect(() => {
    formRef?.current?.setFieldsValue({
      current: query?.page,
      pageSize: query.pageSize,
    });
  },[
    query?.page,
    query.pageSize,
  ]);
  1. 去掉pagination中的pageSizecurrent

當我們切換了每頁顯示的條數(shù)為30時丐枉,點擊重置發(fā)現(xiàn)pageSize會變成20,并不是我們初始設(shè)置的默認值掘托,這是因為ProTable默認是20瘦锹,此時應(yīng)該這樣處理

pagination={{
  defaultCurrent: 1,
  defaultPageSize: 10,
}}

至此問題就已經(jīng)完美的解決了。再會!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末弯院,一起剝皮案震驚了整個濱河市辱士,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌听绳,老刑警劉巖颂碘,帶你破解...
    沈念sama閱讀 221,548評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異椅挣,居然都是意外死亡头岔,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評論 3 399
  • 文/潘曉璐 我一進店門鼠证,熙熙樓的掌柜王于貴愁眉苦臉地迎上來峡竣,“玉大人,你說我怎么就攤上這事量九∈赎” “怎么了?”我有些...
    開封第一講書人閱讀 167,990評論 0 360
  • 文/不壞的土叔 我叫張陵荠列,是天一觀的道長类浪。 經(jīng)常有香客問我,道長肌似,這世上最難降的妖魔是什么费就? 我笑而不...
    開封第一講書人閱讀 59,618評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮锈嫩,結(jié)果婚禮上受楼,老公的妹妹穿的比我還像新娘。我一直安慰自己呼寸,他們只是感情好艳汽,可當我...
    茶點故事閱讀 68,618評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著对雪,像睡著了一般河狐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上瑟捣,一...
    開封第一講書人閱讀 52,246評論 1 308
  • 那天馋艺,我揣著相機與錄音,去河邊找鬼迈套。 笑死捐祠,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的桑李。 我是一名探鬼主播踱蛀,決...
    沈念sama閱讀 40,819評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼窿给,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了率拒?” 一聲冷哼從身側(cè)響起崩泡,我...
    開封第一講書人閱讀 39,725評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎猬膨,沒想到半個月后角撞,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,268評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡勃痴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,356評論 3 340
  • 正文 我和宋清朗相戀三年谒所,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片召耘。...
    茶點故事閱讀 40,488評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡百炬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出污它,到底是詐尸還是另有隱情,我是刑警寧澤庶弃,帶...
    沈念sama閱讀 36,181評論 5 350
  • 正文 年R本政府宣布衫贬,位于F島的核電站,受9級特大地震影響歇攻,放射性物質(zhì)發(fā)生泄漏固惯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,862評論 3 333
  • 文/蒙蒙 一缴守、第九天 我趴在偏房一處隱蔽的房頂上張望葬毫。 院中可真熱鬧,春花似錦屡穗、人聲如沸贴捡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽烂斋。三九已至,卻和暖如春础废,著一層夾襖步出監(jiān)牢的瞬間汛骂,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評論 1 272
  • 我被黑心中介騙來泰國打工评腺, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留帘瞭,地道東北人。 一個月前我還...
    沈念sama閱讀 48,897評論 3 376
  • 正文 我出身青樓蒿讥,卻偏偏與公主長得像蝶念,于是被迫代替她去往敵國和親锋拖。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,500評論 2 359

推薦閱讀更多精彩內(nèi)容