vue-element dropdown 要怎么隐藏一个el-dropdown-item?

发布于 2022-09-11 23:26:21 字数 1455 浏览 18 评论 0

在一个表格的最右端的列模板写成一个dropdown,使用该dropdown菜单作为该表格操作的功能集合。这个页面的加载之前作会做权限查询,如果没有权限则某些el-dropdown-item项目不显示。如果是在jquery的环境下,则是在页面加载的时候使用Hide方法传入隐藏需要隐藏操作ui的id或者是class。但既然使用了Vue-element这个框架,那就不能使用jquery了。

但查阅了element官方组件文档的el-dropdown-item部分。没有发现设置菜单项的隐藏属性,但有一个disabled。这个可以禁用,但是权限既然不能让某人使用,那么更不能让人看到,所以怎么隐藏一个el-dropdown-item,js代码或html也行。如果是用css的visibility: collapse;,那会留下一段空白。这样在用户看来也不是太好。

当然还有一种有效的方法,就是使用后端的模板引擎的if判断权限,虽然我会这样搞。但这样前后端耦合就多了。这个是万不得已才会用的,我更希望是在前端搞。

代码

<el-table-column
        fixed="right"
        label="操作"
        width="100%">
        <template slot-scope="scope" >
          <el-dropdown @command="handleClick(scope.row)" >
            <el-button type="primary"  >
              更多菜单<i class="el-icon-arrow-down el-icon--right"></i>
            </el-button>
            <el-dropdown-menu slot="dropdown">
              <el-dropdown-item command="a" >黄金糕</el-dropdown-item>
              <el-dropdown-item>狮子头</el-dropdown-item>
              <el-dropdown-item ref="messageDrop"  >螺蛳粉</el-dropdown-item>
              <el-dropdown-item disabled >双皮奶</el-dropdown-item>
              <el-dropdown-item divided >蚵仔煎</el-dropdown-item>
            </el-dropdown-menu>
          </el-dropdown>
        </template>
      </el-table-column>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

稚气少女 2022-09-18 23:26:21

建议你先阅读下vue文档

vue中有两个非常基础的语法v-if 和 v-show,都可以很好的解决这个问题

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文