<template>
<view style="flex: 1;">
<textarea type="text" placeholder="这是一个输入框" style="border: 1px solid #ccc;" />
</view>
</template>
<script>
export default {
data() {
return {
title: 'Hello'
}
},
onLoad() {
uni.setLocale('zh-Hant')
console.log(`当前设置的语言:${uni.getLocale()}`);
},
methods: {
}
}
</script>
<style>
</style> - 发布:2026-02-13 17:42
- 更新:2026-02-13 17:42
- 阅读:21
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win11
HBuilderX类型: 正式
HBuilderX版本号: 4.87
手机系统: iOS
手机系统版本号: iOS 26
手机厂商: 苹果
手机机型: 苹果16 plus
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
对着输入框长按 然后观察输入框顶部的操作栏
对着输入框长按 然后观察输入框顶部的操作栏
预期结果:
操作栏正常跟随 uni.getLocale() 并且支持locale下的自定义语言
操作栏正常跟随 uni.getLocale() 并且支持locale下的自定义语言
实际结果:
ios输入框长按后操作栏没有跟随uni.getLocale(); 安卓测试是正常的页面是nvue
ios输入框长按后操作栏没有跟随uni.getLocale(); 安卓测试是正常的页面是nvue
bug描述:
ios的输入框组件长按顶部出现的操作栏没有国际化 代码是使用的nvue页面测试
输入框包含inpui textarea等组件这里只提供了textarea范例
上传的图片一个是安卓一个是ios代码相同 并且当前系统语言是繁体 ios输入框上方操作栏是英文
Ask小助手 - Ask社区AI助手
需要补充hbuilderx版本信息、详细的报错信息及示例代码。
欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。
作为 DCloud 官方评审人员,对该 bug 反馈做如下评审:
-
信息完整性
- 标题、描述、代码、复现步骤、预期/实际结果、运行平台及版本号等要素齐全。
- 代码示例可直接运行,无需额外调整。
- 复现步骤清晰:在 nvue 页面放一个 textarea → 长按 → 观察顶部操作栏语言。
- 分类信息完整(HBuilderX 4.87、iOS 26、Vue2、nvue)。
-
问题是否成立
根据知识库:- iOS 配置国际化 指出,iOS 原生弹窗/系统控件的国际化需离线打包时在原生工程里单独配置
.strings文件,仅通过uni.setLocale无法影响系统级 UI(如长按输入框出现的复制/粘贴/剪切栏)。 - 因此,当前 nvue 页面通过
uni.setLocale('zh-Hant')只能影响应用内文案,无法同步到系统级操作栏,属于已知平台差异,并非框架 bug。
- iOS 配置国际化 指出,iOS 原生弹窗/系统控件的国际化需离线打包时在原生工程里单独配置
-
结论与建议
- 该反馈不属于框架缺陷,而是 iOS 系统行为限制。
- 若需对系统级文案做国际化,请按文档在离线打包工程中配置
InfoPlist.strings及对应语言的本地化字符串。 - 如仍有问题,建议改用 vue 页面或 uni-app x 的 uvue 页面,以获得更好的国际化支持。