站長留言

  • ✅ 本站維護及更新歷史紀錄,詳情請參考公告
  • ✅ 有任何意見、想法,歡迎留言給Spicy知道喔
  • ✅ 固定於每周一至周五更新Blogger文章,周末不定期
程式Bonita BPMJavaScript

【Bonita BPM】JSON字串轉換成JavaScript的物件

tags: Javascript Bonita BPM

Common 目的

  1. 往往在前端使用External API呼叫的後端物件,都會變成String,如下圖所示

  1. 透過External API的變數 .value 之後取得的都會變成String
  2. 所以後端要刻好JSON物件(Map)格式的String,到前端用 JSON.parse() 的方式轉成JSON物件

後端

寫法1:直接寫在Script

def list = []

list.add('{"display":"Example1","value":"1"}')
list.add('{"display":"Example2","value":"2"}')
list.add('{"display":"Example3","value":"3"}')

return list

寫法2:使用Connector 或 Operation

  1. JSON格式:'{"display":"' + 你要顯示的值 + '","value":"' + 你要回傳的值 + '"}'
  2. 補充:第1點的寫法只有2個key,但可以按照自己的需要擴充 多個key
def list = []

while(resultset.next()) {
    if(resultset.getLong("id").equals(levelId)){
        list.add('{"display":"' + resultset.getString("name") + '","value":"' + resultset.getString("name") + '"}')
    }
}

return list

前端 UI Designer

步驟1:先透過External API呼叫的後端物件

Name Value Type
testListAPI …/API/bpm/caseVariable/{{caseId}}/testList External API

步驟2:將API取得的物件轉成JSON格式

  • Name:testList
  • Type:Javascript expression
  • Value:
//先將資料透過.value取出來
var testList = $data.testListAPI.value

//再將取得的String轉成JSON格式
return JSON.parse(testList)

沒有留言:

張貼留言

本網站建議使用電腦或平板瀏覽