前書き:
この記事で説明する内容を説明します
ページネーションの使い方をステップバイステップで教えます
ページング クラス LinkPager および Pagination でカスタマイズできる属性
ページング クラス LinkPager を必要なものに拡張する方法
最初のステップとして、yii2 に付属するページング クラスの使用方法を見てみましょう。
1.コントローラーのアクション
リーリー2、見る
リーリーコードは基本的に完全にコピーでき、一部のデータは変更できます。ほとんどの人が理解できると思います。
2 番目のステップでは、組み込みのページング クラスでどのような属性を定義できるかを見てみましょう。
まず、LinkPager コンポーネントについて話しましょう
.pagination パラメータは必須です。これは Pagination クラスのインスタンスです
.ページの上下ボタンと10個のボタン
まず、前ページと次ページのボタンを中国語に変更します
リーリー
前後のページを表示したくない場合は、prevPageLabelとnextPageLabelをfalseに設定できますリーリー
トップページと最後のページはデフォルトでは表示されません。必要に応じて、このように設定できますリーリー
データが小さすぎて 2 ページに足りない場合、デフォルトではページングは表示されません。必要に応じて、hideOnSinglePage=false を設定してください。 リーリーデフォルトの表示ページ数は10ページですが、maxButtonCountを表示したいページ数に設定できます
リーリーデフォルトのスタイルが気に入らず、ページネーションに独自のスタイルを使用したい人もいます。pre、next、disabled などのスタイルを自分で実装することを忘れないでください。 リーリー
次に、Pagination コンポーネントについて話しましょうデフォルトのページングルートは次のとおりです。何ができるかを見てみましょう
/controller/action?page=2&per-page=20まず最初に、アイテムの合計数を指定する必要があります。このパラメータがないと、ページングを実行できません。 リーリー
デフォルトのページ数は 20 ですが、pageSize を必要に応じて設定できます
リーリー上記のページング ルートから、ページごとのデフォルトの数値がページごとであることがわかります。このパラメーターを表示したくない場合は、pageSizeParam=false を設定するだけです。 リーリー
デフォルトのページがパラメータページに依存していることもわかります。パラメータを p に変更したい場合は、pageParam=p と設定するだけです。 リーリーホームページにページネーションが存在する場合は、/site/index?p=1 ではなく /?p=1 が必要だと思います。ルートを非表示にする方法を見てみましょう。 リーリー
ページング クラス Pagination にバグが見つかるかもしれません。データが 1 ページしかない場合、アドレス バーの page=20 を手動で変更すると、page=1 のデータも表示されますか?もちろん、これはほとんどのインターフェイス API にとって煩わしいものです。ただし、これはバグではなく、友好的な検証です。この問題を回避するには、 validatePage=false を設定しますリーリー
最後に、新しいひねりを加えて、組み込みのページングを拡張しましょう。 「拡張」という言葉を見たときにすぐに読むのをやめないでください。拡張することを学んだときにのみ、将来さらに強くなることができます。どのような拡張方法ですか?ページングコンポーネントを上部ページと下部ページに変更してみましょう。下の写真を参照してください。次に、LinkPager コンポーネントを拡張することで右側の効果がどのように実現されるかを見てみましょう。ソースコードは全員と共有されているので、気に入ったらそれを使って自分で勉強することもできます。
リーリー
このようにして、次のように MLinkPager を呼び出してページング効果を実現しますリーリー
もちろん、自己拡張型ページング構造の焦点は、ページング拡張の実装方法を皆さんに教えることです。多くの質問があることは避けられません。良い意見や方法がある場合は、私に直接メッセージを残してください。一緒に通信します。http://www.bkjia.com/PHPjc/1133107.htmlwww.bkjia.com本当
http://www.bkjia.com/PHPjc/1133107.html