javascript - 如何使 v-btn 在点击时不启动路由但仍根据路由显示事件状态?

标签 javascript typescript vue.js vuetify.js

我的工具栏中有很好的菜单,我使用 v-btn 作为激活器,所以有些项目没有菜单,有些有。问题在于移动设备上悬停不起作用。 当我点击按钮时,它总是触发路线。我设置 :on 路线,以便根据当前路线自动突出显示。所以不知道如何使 v-btn 不触发路线,而只是打开一个菜单,但仍然显示基于路线的选择,嗯......他 child 的子路线

<v-menu class="toolbarMenu" offset-y open-on-hover transition="slide-y-transition">
          <v-btn :to="{ path: `${constants.portfolioPath}`}" flat slot="activator">
            <v-icon class="hidden-sm-and-down" left>work_outline</v-icon>
            {{titles.portfolioMenu}}
          </v-btn>
          <v-list two-line>
            <ListItem :subtitle="titles.portfolioProjectsPage"
                      :title="titles.portfolioProjectsMenu"
                      :to="{name:constants.portfolioProjectsRoute}" icon="business"/>
            <ListItem :subtitle="titles.portfolioVideosPage"
                      :title="titles.portfolioVideosMenu"
                      :to="{name:constants.portfolioVideosRoute}" icon="movie"/>
            <ListItem :subtitle="titles.portfolioPicturesPage"
                      :title="titles.portfolioPicturesMenu"
                      :to="{name:constants.portfolioPicturesRoute}" icon="image"/>
          </v-list>
        </v-menu>

最佳答案

似乎 Vuetify 按钮使用 vue-router 的 router-link 来处理点击和路由器重定向,因此您应该能够覆盖该按钮的默认行为。

<v-btn :to="{ path: `${constants.portfolioPath}`}" 
       flat 
       slot="activator"
       @click.native.prevent="someEmptyMethod"

>
    <v-icon class="hidden-sm-and-down" left>work_outline</v-icon>
    {{titles.portfolioMenu}}
</v-btn>

然后在脚本部分。

methods: {
    someEmptyMethod() {
        // there could be also set some action
    }
}

关于javascript - 如何使 v-btn 在点击时不启动路由但仍根据路由显示事件状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56222652/

相关文章:

typescript - typescript 中的重复标识符提取

typescript - Webpack resolve.alias 不适用于 typescript ?

javascript - 如何将字符串中的 <br> 解析为 VUE.js 中的 html 标记

javascript - 根据路径展平/减少嵌套 JSON,收集路径/层次结构中的字段

javascript - 在 ReactJS 中将 iframe 高度设置为 scrollHeight

javascript - 处理:为什么这个草图不能在 Javascript 模式下工作?

javascript - 前端的 MongoDB ObjectID 类型

javascript - TypeScript 自动将类型转换为整数

plugins - sublime text 3中Vue模板中Pug语法高亮的方法

javascript - 在 vuetify 中关闭芯片时如何停止选择打开?