a-input输入框,苹果电脑(MAC)输入法的输入Bug

一、系统背景

我的项目使用的vue2.6.10 + ant-design of vue 1.7.8版本的框架,其实就是使用了jeecg的框架;然后再开发过程中没有使用过苹果电脑,所以没有测出这输入法的bug;
BUG:在MAC系统中,我的输入框输入"珠海"两个字,然后显示的拼音和中文,不是珠海两个字,但是,如果一个字一个字的输入,就没问题,连打就有问题;

二、问题解决和代码

检查发现,是在全局加了一个事件监听,main.js文件 添加的,影响到了全局,所以把这个全局的事件监听注释掉,这个事件监听的主要作用是去除空格的;

代码:

javascript 复制代码
mounted () {
    // 在全局监听 input 事件;去掉input的空格
    // document.body.addEventListener('input', this.removeSpacesFromInput, true);

  },
  render: h => h(App),
  //去掉input的空格
  // methods:{
  //   removeSpacesFromInput(e) {
  //     // 判断是否为 Ant Design 的 a-input 元素
  //     if (e.target.tagName === 'INPUT') {
  //       if (e.target.closest('.ant-input')) {
  //         // 对 Ant Design 的 a-input 组件去除空格
  //         e.target.value = e.target.value.replace(/\s+/g, '');
  //       } else if (e.target.closest('.el-input__inner')) {
  //         // 对 Element UI 的 el-input 组件去除空格
  //         e.target.value = e.target.value.replace(/\s+/g, '');
  //       }
  //     }
  //   }
  // },
  // //去掉input的空格
  // beforeDestroy() {
  //   // 在组件销毁前移除事件监听
  //   document.body.removeEventListener('input', this.removeSpacesFromInput, true);
  // }

}).$mount('#app')

就是上面的代码影响到了,注释掉就没问题了!!!

相关推荐
killerbasd8 小时前
牧苏苏传 我不装了 4/7
前端·javascript·vue.js
大家的林语冰10 小时前
《前端周刊》尤大开源 Vite+ 全家桶,前端工业革命启动;尤大爆料 Void 云服务新产品,Vite 进军全栈开发;ECMA 源码映射规范......
前端·javascript·vue.js
M ? A12 小时前
Vue 迁移 React 实战:VuReact 一键自动化转换方案
前端·vue.js·经验分享·react.js·开源·自动化·vureact
Burt12 小时前
我的 2026 全栈选型:Vue3 + Elysia + Bun + AlovaJS
vue.js·全栈·bun
小锋java123412 小时前
SpringBoot 4 + Spring Security 7 + Vue3 前后端分离项目设计最佳实践
java·vue.js·spring boot
一 乐12 小时前
校园线上招聘|基于springboot + vue校园线上招聘系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·校园线上招聘系统
LanceJiang13 小时前
从输入 URL 到页面:一个 Vue 项目的“奇幻漂流”
vue.js
码喽7号13 小时前
vue学习四:Axios网络请求
前端·vue.js·学习
像素之间15 小时前
为什么运行时要加set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve
前端·javascript·vue.js
M ? A15 小时前
Vue转React实战:defineProps精准迁移实战
前端·javascript·vue.js·经验分享·react.js·开源·vureact