cari

Rumah  >  Soal Jawab  >  teks badan

Ambil jadual v-data Vuetify sebagai contoh untuk melaksanakan fungsi menyembunyikan lajur secara bersyarat

<p>Saya mempunyai jadual dengan lajur <kod>v-data-table</code> dan <code>actions</code> dan saya mahu memaparkan lajur ini hanya jika pengguna mempunyai kebenaran tertentu. Saya menggunakan mixin untuk menyemak kebenaran. </p> <p>Saya mencuba yang berikut tidak berjaya: </p> <pre class="brush:html;toolbar:false;"><template v-slot:[`header.actions`]="{ header }"v-if="mempunyaiPermission('pusat kemas kini ')"> {{ header.text }} </template> </pra> <p>Beginilah cara saya menggunakan mixin dalam fail komponen: </p> <pre class="brush:js;toolbar:false;">import BaseLayout daripada "../layouts/Base/Base.vue"; import hasPermission daripada "../../../mixins/hasPermissions"; eksport lalai { mixins: [hasPermission], ... } </pra> <p>Keputusan: [1]: https://i.stack.imgur.com/aVSgJ.png</p>
P粉775723722P粉775723722498 hari yang lalu582

membalas semua(1)saya akan balas

  • P粉681400307

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

    header.actions 是一个用于覆盖 actions 列标题渲染的插槽。如果你不传递它(当条件为 false), Vuetify akan memberikan perwakilan lalai.

    Jika anda ingin menyembunyikan (bukan memaparkan) lajur tertentu secara bersyarat, takrifkan pengepala jadual anda sebagai computed

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

    balas
    0
  • Batalbalas