[英]Need help by populating a PrimeReact Tree
我正在嘗試使用來自 sqlite3 數據庫的數據填充 PrimeReact 樹,但它不起作用。
這是我的 SQL 查詢:
select 'prj:'||p.id as key,p.name as label,(
select json_group_array(json_object('key',key,'label',label))
from(
select 'tpr:'||tpr.id as key,tpr.name as label from tpr
where tpr.prjid=p.id
and tpr.active="true"
order by tpr.id
)
) as children
from prj p,usr_right r
where p.id=r.prjid
and p.active="true"
and r.usrid=$1
order by p.id
我得到以下 JSON 代碼:
[
{
key: 'prj:1',
label: 'Projekt 1',
children: '[{"key":"tpr:1","label":"Teilprojekt 1"},{"key":"tpr:2","label":"Teilprojekt 2"}]'
},
{ key: 'prj:2', label: 'Projekt 3', children: '[]' },
{ key: 'prj:3', label: 'Projekt 2', children: '[]' }
]
這沒關系,但我發現孩子沒有被渲染,因為在孩子路徑的方括號周圍有引號 - 我該如何解決這個問題?
如果initial
是將您的 json 映射到Tree
,那么您需要稍作修改以將字符串轉換為數組
let initial = [ { key: 'prj:1', label: 'Projekt 1', children: '[{"key":"tpr:1","label":"Teilprojekt 1"},{"key":"tpr:2","label":"Teilprojekt 2"}]' }, { key: 'prj:2', label: 'Projekt 3', children: '[]' }, { key: 'prj:3', label: 'Projekt 2', children: '[]' } ] let converted = initial.map(obj => ({ ...obj, children: JSON.parse(obj.children)})) console.log(converted)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.