单击焦点区域之外时,弹出窗口不会关闭

hak*_*man 2 javascript twitter-bootstrap vue.js bootstrap-vue

我将 Bootstrap Vue 与 Vue.js 结合使用,并且遇到了一个问题,即我正在迭代某些项目并将其显示给用户。

问题是,当用户单击其中一个弹出窗口时,每个打开的弹出窗口都会关闭(如我所愿),但是当用户单击目标(​​打开的)弹出窗口的焦点区域之外时,它不再关闭。

看起来每次用户单击目标弹出窗口时都会运行打开动画。

这是代码:

<template>
  <div>
    <div class="row" v-for="(n, i) in 5" :key="n">
      <div :id="'popover' + visitor.id + '-' + i" @click="$root.$emit('bv::hide::popover')">
        <div class="card">
          <b-popover :target="'popover' + visitor.id + '-' + i">
            <template slot="title">
              Edit image
              <button
                class="close-popover"
                @click="$root.$emit('bv::hide::popover', 'popover' + visitor.id + '-' + i)"
              >X</button>
            </template>
          </b-popover>
        </div>
      </div>
    </div>
  </div>
</template>
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏!

Ved*_*ran 6

您可以triggers="click blur"在弹出窗口上进行设置。当用户单击弹出窗口外部或目标上时,这将关闭它。

您可以在此处查看更多信息。