検索

ホームページ  >  に質問  >  本文

Vuetify の v-data-table を例として、条件付きで列を非表示にする機能を実装します。

<p>列 <code>v-data-table</code> と <code>actions</code> を含むテーブルがあり、ユーザーが特定の権限を持っている場合にのみこの列を表示したいと考えています。許可を確認するためにミックスインを使用しています。 </p> <p>次のことを試しましたが成功しませんでした: </p> <pre class="brush:html;toolbar:false;"><template v-slot:[`header.actions`]="{ header }" v-if="hasPermission('アップデート センター')"> {{ ヘッダーテキスト }} </テンプレート> </pre> <p>コンポーネント ファイルでミックスインを使用する方法は次のとおりです: </p> <pre class="brush:js;toolbar:false;">「../layouts/Base/Base.vue」から BaseLayout をインポートします; 「../../../mixins/hasPermissions」から hasPermission をインポートします。 デフォルトのエクスポート { ミックスイン: [許可あり]、 ... } </pre> <p>結果: [1]: https://i.stack.imgur.com/aVSgJ.png</p>
P粉775723722P粉775723722498日前586

全員に返信(1)返信します

  • P粉681400307

    P粉6814003072023-08-26 09:25:31

    header.actions は、actions 列ヘッダーのレンダリングをオーバーライドするために使用されるスロットです。これを渡さない場合 (条件が false の場合)、Vuetify はデフォルトの表現をレンダリングします。

    特定の列を条件付きで非表示にする (レンダリングしない) 場合は、テーブル ヘッダーを computed

    として定義します。 リーリー

    返事
    0
  • キャンセル返事