账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vueJS中树形图全打开的问题
    57
    0

    现在因为写了this.open = !this.open所以全部内容都能展开,能否提供一下怎么修改成点击一个其他都关闭只显示一个二级菜单的形式。有想过绑定标识,但是这种写法会一起绑定上。

    <template>
      <li class="tree-menu-list">
        <a @click="toggle();sendParams()">
          <i v-if="isFolder" class="iconfont" :class="[open ? 'icon-jiantouarrow487': 'icon-iconfontjiantou']"></i>
          <i v-if="!isFolder" class="iconfont"></i>
          {{ model.menuName }}
        </a>
        <ul v-show="!open" v-if="isFolder">
           <tree-menu v-for="(item, index) in model.children" :model="item" :key="index"></tree-menu>
        </ul>
      </li>
    </template>
    
    <script>
    export default {
      name: 'treeMenu',
      props: ['model'],
      data () {
        return {
          open: false,
          isFolder: this.model.children && this.model.children.length
        }
      },
      methods: {
        toggle: function () {
          if (this.isFolder) {
            this.open = !this.open
          }
        },
        sendParams: function () {
          this.$router.push({
            path: './info',
            name: 'info',
            query: {
              id: this.model.id,
              name: this.model.menuName
            }
          })
        }
      }
    }
    </script>
    
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部