API 參考:實例成員
本頁列出 JSONEditor 實例建構後可用的屬性與方法。
屬性
body、editor、children 在資料載入完成後才以非同步方式指定,建構子剛回傳時尚未就緒,見核心概念。
| 成員 | 型別 | 說明 |
|---|---|---|
json |
getter → string |
序列化目前資料為 4 空格縮排的 JSON 字串;根層無鍵子節點會被忽略,見序列化 |
type |
getter → string |
根節點型別;目前實作固定回傳 "object",匯入陣列也不會改變 |
children |
JSONEditorNode[] |
頂層子節點陣列 |
body |
HTMLElement |
編輯器根 DOM 元素(帶 pd-json-editor class) |
editor |
HTMLElement |
節點容器 DOM 元素(<section>) |
button |
Array |
初始值為 [],目前實作未使用 |
方法
| 方法 | 回傳 | 說明 |
|---|---|---|
import(data) |
Promise<void> |
匯入新資料(Object / File / URL string)並以 render(true) 重新渲染,見資料載入 |
export() |
void |
下載 NanoJSON-{timestamp}.json;根層只有一個無鍵子節點時仍會寫入(與 json getter 不同) |
reset() |
void |
等同 import({});重設後沒有任何節點 |
enable() |
void |
解除唯讀;移除整棵已渲染 DOM 的 disabled 屬性 |
disable() |
void |
進入唯讀;為整棵已渲染 DOM 加上 disabled 屬性,見唯讀模式 |
render(isUpdate = false) |
void |
重新渲染所有頂層節點;僅當 isUpdate === true 且初次渲染已完成時觸發 Lifecycle.update |
insert() |
void |
於根層新增一個空節點(型別 "string")並重新渲染,不觸發 Lifecycle.update |
延伸閱讀
- Constructor 設定參數:API 參考
- 節點物件的欄位與方法:API 參考:JSONEditorNode