You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OJET开发求助:如何将JSON数据转为字符串绑定到oj-bind-text?

问题解决:OJET中通过<oj-bind-text>显示JSON数据字段

问题原因

你使用ko.observable()存储完整的JSON对象,但在绑定表达式里直接写cardData.agent_ID无法正确取值——因为cardData是Knockout的observable函数,而非普通对象,直接访问agent_ID会读取函数本身的属性,而非内部存储的JSON对象属性。

解决方法

方法1:在绑定表达式中手动unwrap observable

修改HTML代码,通过cardData()获取observable内部的对象,再访问属性:

<oj-bind-text value="[[cardData().agent_ID]]"></oj-bind-text>

方法2:改用ko.observableObject()存储数据

如果希望保持绑定表达式简洁,可以将cardData定义为observable对象,这样就能直接通过属性访问符取值:
修改JS代码:

this.cardData = ko.observableObject();

this.fetchAgentDetails = async function () {
  try {
       const response = await fetch('http://localhost:8080/cardData');
       const data = await response.json();
       console.log(data)
       this.cardData(data);
       } catch (error) {
           // Handle errors
       }
   };
this.fetchAgentDetails();

HTML代码保持原写法即可:

<oj-bind-text value="[[cardData.agent_ID]]"></oj-bind-text>

可选优化

如果字段可能为null或undefined,可以添加空值兜底,避免显示异常:

<oj-bind-text value="[[cardData()?.agent_ID || '']]"></oj-bind-text>

内容的提问来源于stack exchange,提问作者kona B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 16:32:46