HarmonyOS 鸿蒙Next 如何将资源文件里配置的字符串符值给string变量

HarmonyOS 鸿蒙Next 如何将资源文件里配置的字符串符值给string变量 使用如下语句:

let aa: string = $r('app.string.title_user');

报告错误:Type ‘Resource’ is not assignable to type ‘string’. <tsCheck>

使用如下语句:

let aa: string = new String($r('app.string.title_user')).toString();

不报错,但符值内容不对

如何才能把资源文件里配置的字符串符给变量呢?敬请指教!谢谢!


更多关于HarmonyOS 鸿蒙Next 如何将资源文件里配置的字符串符值给string变量的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

终于找到个方法:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getMedia($r(‘app.media.test’).id, (error, value) => {
  3. if (error != null) {
    
  4.   console.log("error is " + error);
    
  5. } else {
    
  6.   let media = value;
    
  7. }
    
  8. });
  9. });

但是这个方法只能在FA模式下使用,不能在Stage模式下使用:

This API is used only in FA Mode, but the current apiType is stageMode. <tsCheck>

请问大侠在Stage下用什么?不胜感激!!!

更多关于HarmonyOS 鸿蒙Next 如何将资源文件里配置的字符串符值给string变量的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


遇到了同样的问题,下面的代码,表示看不懂

getContext(this).resourceManager
  .getStringSync($r('app.string.item_upload_local_baodian').id);
搞定:
```bash
getContext(this).resourceManager  
.getStringSync($r('app.string.item_upload_local_baodian').id);

关贴!

感谢您的反馈,如后期有疑问可以随时发帖,感谢您的支持。

在HarmonyOS鸿蒙系统中,若要将资源文件里配置的字符串值赋给一个string变量,可以通过资源管理系统来加载这些资源。以下是具体步骤:

  1. 定义资源文件: 在resources目录下创建或编辑相应的资源文件(如strings.json),并在其中定义字符串资源。例如:

    {
      "app_name": "MyHarmonyOSApp",
      "welcome_message": "Welcome to HarmonyOS!"
    }
    
  2. 加载资源: 在你的代码中,使用ResourceTable类来访问这些资源。首先,确保你的模块已经正确引入了资源文件。然后,你可以通过ResourceTable.String_xxx的方式来获取字符串资源。例如:

    String appName = ResourceTable.String_app_name;
    String welcomeMsg = ResourceTable.String_welcome_message;
    

    注意,这里的代码示例虽然使用了类似Java的语法,但实际上是鸿蒙系统的特定API调用,与Java或C语言的标准库调用不同。

  3. 使用变量: 现在appNamewelcomeMsg变量中分别存储了资源文件中定义的字符串值,你可以在代码中使用这些变量。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部