若依權限v-hasPermi

在寫項目中,發(fā)現(xiàn)v-hasPermi只能隱藏按鈕,像一些標簽是不能隱藏的,比如說el-table中的el-table-column
如下圖所示:


image.png

有兩種方法:

方法一

要想進行標簽的權限隱藏,可以配合v-if進行

this.$auth.hasPermi('production:semi:registeExport')
 
//既然拿到了判斷權限的標識鑰匙,那接下來就好辦了
 <el-table-column
        label="操作"
        align="center"
        //直接在標簽上使用v-if來進行判斷是否開啟權限,即可實現(xiàn)標簽的權限隱藏
        v-if="$auth.hasPermi('production:semi:registeExport')"
        width="200"
      >
 </el-table-column>

總結:關鍵 this.$auth.hasPermi('production:semi:registeExport') 這行代碼可以判斷是否是開啟權限,再配合v-if進行標簽的權限隱藏即可。

方法二

拿到設置的所有權限,根據(jù)字段去判斷是否包含其中

// 獲取權限
    hasPermi(permission) {
      let userPermissions = this.$store.getters.permissions
      return userPermissions.includes(permission) || userPermissions.includes('*:*:*');
    },
<el-table-column
          label="操作"
          align="center"
          width="120"
          class-name="small-padding fixed-width"
          fixed="right"
          v-if="hasPermi('production:semi:registeExport')"
        >
          <template slot-scope="scope">
            <el-button
              size="mini"
              type="text"
              icon="el-icon-edit"
              v-hasPermi="['production:semi:registeExport']"
              @click="handleUpdate(scope.row)"
              >修改xxx
            </el-button>
          </template>
        </el-table-column>
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容