meteor中分頁庫alethes:pages用法彙總

1.添加分頁庫:數組

meteor add alethes:pages

2.新建分頁:緩存

Pages = new Meteor.Pagination("collection-name")

3.設定(分通用/客戶端/服務端):app

客戶端:函數

  • dataMargin (Number, default = 3) - 臨近頁面預取緩存頁數.
  • filters (Object, default = {}) - MongoDB find query object, eg. {name: {$lt: 5}}
  • itemTemplate (String, default = "paginateItemDefault") - 用於條目像顯示的模板名稱. 默認將列出條目的全部屬性。
  • navShowEdges (Boolean, default = false) - 是否在導航面板中顯示首、末頁連接 («) .
  • navShowFirst (Boolean, default = true) - 是否在導航面板中顯示首頁連接 («) .
  • navShowLast (Boolean, default = true) - 是否在導航面板中顯示末頁連接 (») .
  • onReloadPage1 (Boolean, default = false) - 是否因設置改變(eg. new sorting order)致使從新加載數據後導航至頁面1。
  • paginationMargin (Number, default = 3) - 在導航面板中顯示的臨近頁面連接數目。
  • perPage (Number, default = 10) - 每頁顯示條目數目 or 無限翻滾模式每次請求加載數 (不能大於服務端pageSizeLimit值)
  • requestTimeout (Number, default = 3) - 重試前響應等待時間,單位:秒 (主要用於頁面中有多個集合時)。
  • route (String, default = "/page/") - 後續頁面路由前綴 (eg. "/page/" gives "/page/1", "/page/2" etc.)
  • router (String, default = **undefined)** - 三個選項:
    • true - 由用戶獨立設定使用的路由
    • false - 不使用路由
    • "iron-router" - 使用iron-route而且Pages庫自動設置路徑
  • routerTemplate (String, default = "pages") - iron-router用來生成分頁的模板
  • routerLayout (String, default = "layout") - iron-router用來生成分頁的佈局
  • sort (Object, default = {}) - MongoDB sort determining object, eg. {name: 1}
  • templateName (String, default = "") - 使用的模板的名字. 末尾與集合名保持一致.

服務端:佈局

  • auth (Function, default = undefined) - 由內建發佈方法調用的受權函數,參數有:ui

    • skip - 預先計算條目數量,跳過基於正在發佈的頁面數. 返回遊標時使用.
    • subscription - the Meteor subscription object (this in Meteor.publish()). 在已驗證的鏈接中, subscription.userId 記錄當前登陸用戶的 _id. 不然爲 null.  Pagination對象上下文調用受權函數. 總頁數不是必須的,而且頁面依賴性受權規則會是總數計算無效,因此不顯示頁數. 總頁數用於正確顯示導航控件.

    受權函數的返回值爲:this

    • true - 受權對分頁集合的無限制訪問
    • a falsy value - 拒絕對分頁集合的訪問
    • a Number - 發佈頁碼小於特定數值的頁面 (頁碼始於1).
    • an Array of the form: [filters, options] - 發佈 this.Collection.find(*filters*, *option*)
    • a Mongo.Collection.Cursor (or some other cursor with a compatible interface) -發佈該遊標.
    • an Array of Mongo.Collection.Cursor objects (or some others cursor with a compatible interface) - 發佈遊標數組. 發佈一個遊標或遊標數組時,必須手動設置 realFilters (用於發佈的filters; 有時與客戶端可見的過濾器不一樣) or nPublishedPages (顯式標識已發佈頁面的數量) 以正確繪製導航控件.大多數狀況下推薦返回過濾器和選項的數組(選項4).
  • availableSettings (Object, default = {}) - 定義由客戶端發起的設置改變規則.有效的實體經過鍵引用設置的名字,並提供以下值:
    • true - 容許對設置的全部改變 (if not otherwise limited by constraints such as pageSizeLimit)
    • a falsy value - 顯式拒絕全部修改.
    • a Function - 定義設置修改策略.
  • divWrapper (String, Boolean, default = "pageCont") - 在未啓用table模式下設置該屬性, 分頁頁面被包裝進提供class名稱的div元素中
  • fastRender (Boolean, default = false) - 設置是否使用fast-render package加速頁面加載
  • homeRoute (String, default = "/") - if "iron-router" is enabled, the specified route sets currentPage to 1
  • infinite (Boolean, default = false) - infinite scrolling
  • infiniteItemsLimit (Number, default = Infinity) - ‘無限加載’模式下每次加載的最大條目數量. 設置後只有最新的n條將顯示在頁面上.
  • infiniteRateLimit (Number, default = 1) - 設置無限加載模式下後續頁面變化之間的最小時間間隔 (in seconds)
  • infiniteTrigger (Number, default = .8) - 在無限加載模式下,設置請求的新數據部分與頁面底部的距離 (for val > 1: in pixels, for 0 > val >= 1: in (1 - percent))
  • navTemplate (String, default = "_pagesNav") - 用於分頁導航的模板名稱
  • onDeniedSetting (Function, logs "Changing {{setting}} not allowed." to console by default) - called when the setting is unavailable to the client (based on the rules defined in #availableSettings() or lack thereof).
  • pageTemplate (String, default = "_pagesPage") - 顯示條目頁面的模板名稱
  • pageSizeLimit (Number, default = 60) -限制每頁顯示的最大條目數
  • rateLimit (Number, default = 1) - 設置後續頁面之間改變的最小時間間隔(以秒爲單位)
  • routeSettings (Function, default = undefined) - 可選函數,當啓用iron-router時,在onBeforeAction中被route對象(this in onBeforeAction) 做爲參數調用 (Pagination對象上下文) . 該函數可以基於route的參數(see iron-router example, view 3)修改分頁設置 (eg. filters).
  • table (Object, Boolean, default = false) - 從分頁集合生成表格.屬性有:
    • fields (Array, required) - an array of fields to be displayed in subsequent columns of the table
    • class (String, default = "") - 表格的class名稱
    • header (Array, default = fields) - 表頭標籤數組.
    • wrapper (String, Boolean, default = false) - 可選的 <div> 封裝的class名稱. 未設置時不生成封裝.
相關文章
相關標籤/搜索