Element UI - VueJS - IOS 上的选择输入双击错误

Lar*_*Dev 2 css mobile-safari ios vue.js element-ui

我在 iOS safari 或 chrome 上遇到一个奇怪的问题,当尝试从选择输入中选择一个选项时,当我触摸选择器时,它会在第一次点击时正确显示选项,但是当我尝试选择一个选项时,我必须点击两次即可使其工作,这是我的实际场景:

"element-ui": "^2.13.1", "vue": "^2.6.11"
Run Code Online (Sandbox Code Playgroud)

这是我的选择输入:

                        <el-select class="select-danger"
                                   placeholder="Language / Idioma"
                                   v-model="locale">
                            <el-option v-for="option in selects.languages"
                                       class="select-danger"
                                       :value="option.value"
                                       :label="option.label"
                                       :key="option.label">
                            </el-option>
                        </el-select>


watch: {
      // watch for locale changes
      locale: function (value) {
          alert("selected")
      }
  },
Run Code Online (Sandbox Code Playgroud)

这个问题似乎只发生在 iOS 上,我在 Android chrome 浏览器上测试过,工作完美。

关于可能导致此问题的原因有什么想法吗?

Lar*_*Dev 6

环顾了一段时间后,我在 Element UI Github issues 中找到了一个解决方法,就在这里:

Element UI Github 问题

显然,这与悬停状态有关,它在 iOS 上管理得不好,这是一个众所周知的问题,对于这种情况,解决方案似乎是将以下 SCSS 添加到 App.vue :

.el-scrollbar {
    > .el-scrollbar__bar {
        opacity: 1;
    }
}
Run Code Online (Sandbox Code Playgroud)

但不知何故,在我的情况下,这不起作用,所以我只用 css 做到了:

/*Fixes double tap on iOS*/
.el-scrollbar__bar {
    opacity: 1!important;
}
Run Code Online (Sandbox Code Playgroud)

就是这样,这解决了 Element UI 的双击问题。

希望这对其他人有帮助。