HarmonyOS 如何让多语言支持占位

比如多语言内容如下:

{
  "name":"just_pay",
  "value":"Are you sure to pay {price} score?"
}

调用的时候如下:

$r('app.string.just_pay')

期望的效果:

$r('app.string.just_pay', 100)

实际显示:

Are you sure to pay 100 score?

HarmonyOS是否支持?

HarmonyOS
2天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-resource-manager-V5

// string.json
{
  "name": "just_pay",
  "value": "%s you sure to pay %d %s?"
}
// page.ets
import { BusinessError } from '@ohos.base';
import common from '@ohos.app.ability.common';

@Entry()
@Component
struct Login {
  private context = getContext(this) as common.UIAbilityContext;

  build() {
    Column({ space: 20 }) {
      Button('change', { type: ButtonType.Capsule, stateEffect: true })
        .onClick(() => {
          try {
            this.context.resourceManager.getStringSync($r('app.string.just_pay'), 'Are', 100, 'score')
            console.log('resStr',
              this.context.resourceManager.getStringSync($r('app.string.just_pay'), 'Are', 100, 'score'))
          } catch (error) {
            let code = (error as BusinessError).code;
            let message = (error as BusinessError).message;
            console.error(`getStringSync failed, error code: ${code}, message: ${message}.`);
          }
        })
        .width(120)
        .height(40)
        .fontSize(20)
    }
    .alignItems(HorizontalAlign.Center)
    .height('100%')
    .width('100%')
    .padding(80)
  }
}
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS 多语言支持繁体中文吗
217浏览 • 1回复 待解决
HarmonyOS Web页面如何支持多语言
157浏览 • 1回复 待解决
HarmonyOS 多语言修改失效
178浏览 • 1回复 待解决
求助ETS如何多语言切换?
3484浏览 • 1回复 待解决
HarmonyOS 多语言字符串转换
223浏览 • 1回复 待解决
HarmonyOS 多语言国际化咨询
13浏览 • 1回复 待解决
哪些语言支持MongoDB?
3862浏览 • 1回复 待解决
HarmonyOS如何使用Image占位
572浏览 • 1回复 待解决
HarmonyOS 如何app支持横屏?
202浏览 • 1回复 待解决
ArkTS如何实现空格占位
2454浏览 • 1回复 待解决
ArkTS语言支持语音识别吗?
1208浏览 • 1回复 待解决
HarmonyOS string占位符中如何使用Span
21浏览 • 1回复 待解决
HarmonyOS image 组件占位
240浏览 • 1回复 待解决