安装上的自动对焦输入 (Vue) - iOS

2024-02-11

我想在 Vue 组件出现时触发输入框聚焦(从而弹出键盘)。

它不起作用iOS.

我尝试使用 Vue 的示例指令(here https://v2.vuejs.org/v2/guide/custom-directive.html)和 HTML5autoFocus但都不起作用。

我在沙箱中创建了这个示例(https://codesandbox.io/s/lw321wqkm https://codesandbox.io/s/lw321wqkm).

FWIW,我不认为这是 JS 限制,因为我已经看到了示例工作(例如 React Native Web 使用autoFocus- 参见示例 https://codesandbox.io/s/zrn8jooy1m)

父组件

<template>
<div>
  <TextComp v-if='showText' />
  <button @click='showText = !showText'> Show/hide input </button>
</div>
 
</template>
 ...
 

子组件

<template>
<div>
   <input ref='focusMe' type='text'/>
</div>
 
</template>
 
<script>
 
export default {
  name: 'TextComp',
  mounted () {
    this.$refs.focusMe.focus()
  }
}
 
</script>

我希望你现在一定已经找到了解决方案。

但我只是想为像我这样的其他新用户添加这个。

mounted () {
    this.$refs.focusMe.focus()       // sometime this doesn't work.
  }

尝试添加这个。

this.$nextTick(() => this.$refs.focusMe.focus())

欲了解更多信息,请检查this https://v2.vuejs.org/v2/api/#Vue-nextTick

编辑:2022 年 6 月 14 日

普拉尚特 https://stackoverflow.com/a/47636157/5375291答案也帮助我更深入地理解了nextTick。

nextTick 允许您在更改一些数据并且 Vue.js 根据您的数据更改更新虚拟 DOM 之后、但在浏览器在页面上呈现该更改之前执行代码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

安装上的自动对焦输入 (Vue) - iOS 的相关文章

随机推荐

  • Android删除SIM卡联系人的方法

    下面是我从手机中删除联系人的代码 Uri contactUri Uri withAppendedPath PhoneLookup CONTENT FILTER URI Uri encode phone Cursor cur mContext
  • 单击外部链接时更改谷歌地图标记图标?

    我有一个谷歌地图 上面有很多标记 从 MySQL 数据库收集 我当前正在使用以下代码在单击标记时更改标记的图标 var redbikeicon images bike red png marker new google maps Marke
  • 即时应用程序功能模块中的资源合并

    在即时应用程序功能模块中 我导入一个 aar 使用来自 Maven 存储库的 api 语句 其中包含其清单中的活动声明以及此声明中使用的 样式 资源 由于在基本功能项目中找不到样式资源 因此清单合并失败 功能模块中导入的 aar 的资源似乎
  • IE 11 添加类 + 删除类

    我无法让此代码在 Internet Explorer 11 上运行 我知道此段导致了问题 如果我在激活此代码的情况下上传文件 IE 11 会将我网站的整个部分完全显示为空白 没有它 它会在我的网站上显示信息 但它的功能显然不一样 我查过各种
  • select2 动态改变项目

    我有两个链接的选择 第一个选择的每个值决定哪些项目将显示在第二个选择中 第二个选择的值存储在二维数组中 id 1 text a id 2 text b id 1a text aa id 1b text ba 第一个选择值确定用于填充第二个选
  • LDA Mallet 调用进程错误

    我正在尝试实现以下代码 import os os environ update MALLET HOME r c mallet 2 0 8 mallet path C mallet 2 0 8 bin mallet ldamallet gen
  • seasonal_decompose:操作数无法与系列上的形状一起广播

    我知道关于这个话题有很多问题 但没有一个能帮助我解决这个问题 我真的很坚持这个 用一个简单的系列 0 2016 01 31 266 2016 02 29 235 2016 03 31 347 2016 04 30 514 2016 05 3
  • 带有外部图像的 box2d-js 元素

    到目前为止 在各种 box2d js 实现的示例中 我只能找到形状 球 盒子 等 中定义的元素 有没有办法创建由图像定义的元素 例如一块巨石 您可以使用b2PolyDef and b2PolyShape对象来创建多边形 本文档 http w
  • Haskell - 简单构造函数比较(?)函数

    在我的项目中 我创建了一种数据类型 它可以保存几种类型的值之一 data PhpValue VoidValue IntValue Integer BoolValue Bool 我现在想做的是有一种简单的方法来检查两个值是否PhpValue类
  • Google 身份验证器作为公共服务提供吗?

    是否有公共 API 可以使用 双因素身份验证 在自运行 例如 LAMP 堆栈 Web 应用程序上 The project http code google com p google authenticator 是开源的 我没用过 但它使用记
  • vertx 应用程序中的 CORS 问题无法正常工作

    我的 Vertx 服务器驻留在服务器 A 中 客户端驻留在服务器 B 中 当我尝试访问 vertx 服务器时 弹出 CORS 错误 我添加了一些服务器端代码来处理 CORS 问题 但它不起作用 我们是否需要在客户端添加一些标头 我在这里缺少
  • Yii:需要 .php 文件

    我用 Yii 开发一个项目 我需要一个普通的 php 文件 不是组件 不是类 只是 PHP 函数定义的常规序列 在 Yii 框架下执行此操作的正确方法是什么 我应该使用普通的 require once 吗 require once Yii
  • 如何从雅虎财经下载仅限 100 行的数据

    所以我正在做这个项目 我必须从雅虎财经下载历史股票数据 得到了这个代码 它工作正常 但最多只能下载 100 行 我尝试在网上扫描答案或不同的代码 这个只是从 Excel 中录制的宏 但我在 YouTube 上看到了一些使用他的解决方案的教程
  • ...联合问题中不允许使用构造函数

    我迫切需要找到以下问题的解决方案 namespace test template
  • C#:相当于 python try/catch/else 块

    在Python中 有这样有用的异常处理代码 try Code that could raise an exception except Exception Exception handling else Code to execute if
  • Cuda C 上任意大小的矩阵转置(具有共享内存)

    我无法找到在 CUDA C 中使用共享内存转置非方矩阵的方法 我是 CUDA C 和 C 的新手 In 这篇博文 https developer nvidia com blog efficient matrix transpose cuda
  • Jquery ui 自动完成 - 多个来源

    对于 1 个源 这是 ajax 调用后的正确代码 url links2 xml 我希望源是多个 xml 文件 如何包含额外的路径 Thanks 首先 docs http docs jquery com UI API 1 8 Autocomp
  • Angular $q.when 是如何工作的?

    有人可以解释一下怎么做吗 q when在 AngularJS 中工作 我正在尝试分析如何 http工作并发现了这个 var promise q when config 这是来自 Chrome 控制台的配置对象 Object transfor
  • 如果我在 Python 3 中将文件截断为零,我还需要寻找零位置吗?

    根据来自的回答这个问题 https stackoverflow com questions 8945370 garbage in file after truncate0 in python呼叫truncate实际上并没有移动文件的位置 所
  • 安装上的自动对焦输入 (Vue) - iOS

    我想在 Vue 组件出现时触发输入框聚焦 从而弹出键盘 它不起作用iOS 我尝试使用 Vue 的示例指令 here https v2 vuejs org v2 guide custom directive html 和 HTML5autoF