Nehmen Sie die V-Datentabelle von Vuetify als Beispiel, um die Funktion des bedingten Ausblendens von Spalten zu implementieren
P粉775723722
P粉775723722 2023-08-25 14:48:06
0
1
538
<p>Ich habe eine Tabelle mit den Spalten <code>v-data-table</code> und ich möchte diese Spalte nur anzeigen, wenn der Benutzer über bestimmte Berechtigungen verfügt. Ich verwende ein Mixin, um Berechtigungen zu überprüfen. </p> <p>Ich habe Folgendes erfolglos versucht: </p> <pre class="brush:html;toolbar:false;"><template v-slot:[`header.actions`]="{ header }" v-if="hasPermission('update center ')"> {{ Überschrift }} </template> </pre> <p>So verwende ich das Mixin in der Komponentendatei: </p> <pre class="brush:js;toolbar:false;">BaseLayout aus „../layouts/Base/Base.vue“ importieren; import hasPermission from "../../../mixins/hasPermissions"; Standard exportieren { Mixins: [hasPermission], ... } </pre> <p>Ergebnis: [1]: https://i.stack.imgur.com/aVSgJ.png</p>
P粉775723722
P粉775723722

Antworte allen(1)
P粉681400307

header.actions 是一个用于覆盖 actions 列标题渲染的插槽。如果你不传递它(当条件为 false 时),Vuetify 将渲染默认的表示。

如果你想要有条件地隐藏(不渲染)某些列,请将你的表头定义为 computed

computed: {
  headers() {
    const headers = [
      // 其他表头定义
    ]
    if(this.hasPermission('update center')) {
      headers.push({
        // actions 表头定义
      })
    }

    return headers
  }
}
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!