我有一个由多个组件组成的app.vue.其中一个组件上有一个覆盖图,上面有一个按钮,可以禁用该覆盖图并在单击后使内容可见.然而,一旦我点击屏幕上的任何地方,覆盖就会被禁用,而不是按钮.

template>
 <v-card>
    <v-row>
  
      <v-overlay opacity="0.88" :absolute="true" :model-value="overlay" contained>
        <v-btn color="warning" @click="disenable(false)">No Automation</v-btn>
      </v-overlay>
    </v-row>

    <v-toolbar flat dense color="indigo" style="height: 80px;">
      <v-toolbar-title style="padding-top: 40px;">
        Active Strategies
      </v-toolbar-title>
    </v-toolbar>
    <v-divider class="mx-4"></v-divider>
    <v-table fixed-header height="auto">
      <thead>
        <tr>
          <th class="text-left">Assetpair</th>
          <th class="text-left">Strategy</th>
          <th class="text-left">Actions</th>
        </tr>
      </thead>
      <tbody>
        <tr v-for="row in strategies" v-bind:key="row.ticker">
          <td>{{ row.assetpair }}</td>
          <td>{{ row.strategy }}</td>
          <td>
            <div class="text-left">
              <v-chip class="ma-2" color="red" dark @click="stopStrategy(127)">
                <v-icon left>mdi-server-plus</v-icon>Stop  Strategy
              </v-chip>
            </div>
          </td>
        </tr>
      </tbody>
    </v-table>
  </v-card>
</template>
<script>

如果我从数据部分移除覆盖props ,则不会显示覆盖:

import axios from 'axios'
// import StrategyProvider from "../lib/strategy.js";
import { ref } from 'vue'

const strategies = ref([{}, {}])
const overlay = ref(true)
const setOverlay = v => (overlay.value = v)

export default {
  // props: ["strategies"],
  data: function() {
    return {
      overlay: true,
      strategies: []
    };
  },

推荐答案

它关闭是因为您正在单击背景.看看这:persistent个props :

在该元素外部单击或按Esc键不会将其取消激活.

这是一张playground美元的钞票

Vue.js相关问答推荐

点击屏幕的任何位置都会禁用v-overlay

如何向 添加方法和 v-model?

在 onMounted 之前渲染的 Vue 模板

为什么普通对象在 Vue3 中自动变成响应式的?

在 dom 内移动 Vue 组件?

Vuex store 在 Nuxt 的什么地方

Nuxt.js 中的开发工具样式编辑问题

将props传递给设置时的VueJS 3组合API和TypeScript类型问题:类型上不存在属性 user用户

如何将 vuejs 项目部署到 heroku

如何使用 v-on:change 将输入文本传递给我的 vue 方法?

使用 vuex 更新数据

Express.js + lint 出错

可以同时使用 Tailwind css 和 Bootstrap 4 吗?

如何从 bootstrap-vue 模态监听事件?

vuejs挂载生命周期未触发

NUXT如何将数据从页面传递到布局

为什么 Vue.js 使用 VDOM?

'不提供名为'createRouter'的导出'' vue 3、vite 和 vue-router

如何设置 :id 前缀字符串?

如何在 Promise 回调中更新 Vue 应用程序或组件的属性?