文件 1.11.6

編輯器選項

本頁列出 new MDEditor(config) 接受的每個選項、預設值與實際生效方式。

建構

const editor = new MDEditor({
    id: "editor",
    defaultContent: "# Hello",
    hotKey: true,
    autosave: true,
    preventRefresh: false,
    tabPin: false,
    style: { mode: "auto", fill: true, showRow: true },
    event: { save: (text) => {}, upload: async () => ({ href: "", alt: "" }) }
});

行為選項

選項 型別 預設 說明
id string 無 容器元素 ID;找不到時建立未掛載的 <section>,用 editor.body 取得後自行插入
defaultContent string "" 初始 Markdown,會先 trim();第一次 init() 用完後即清空
hotKey boolean true 是否啟用格式化快捷鍵;復原、儲存、Tab 等編輯鍵不受影響,見 快捷鍵
autosave boolean true 輸入後是否自動更新預覽;false 時只在 save() 更新,工具列會多出「儲存並預覽」按鈕
preventRefresh boolean false 為真時註冊 beforeunload 攔截,並在整個 document 攔截 F5、Cmd/Ctrl+R
tabPin boolean | 0/1 false 工具列是否固定顯示;可再由工具列的釘選按鈕切換
wrap boolean | 0/1 true 自動換行;v1.11.6 中 false/0 會被 || 1 覆蓋,初始值永遠為開啟,只能用工具列按鈕關閉
event.save function(text) 無 儲存回呼,收到編輯器純文字;設為 null 時 save() 直接回傳 false
event.upload async function() 無 存在時工具列出現上傳圖片按鈕,見 工具列

樣式選項

選項 預設 說明
style.mode "auto" "auto"/"light"/"dark",不分大小寫;見 主題
style.fill true 寫入 data-fill,讓容器填滿父元素
style.fontFamily "'Roboto Mono', monospace" 編輯器字型
style.showRow true 寫入 data-row,顯示行號
style.placeholder.text "Type here ..." 最後一列為空時顯示的提示文字
style.placeholder.color "#bfbfbf" 提示文字顏色
style.focus.backgroundColor "#0000ff1a" 目前所在列的背景色
style.focus.color "#0000ffff" 目前所在列的文字與游標顏色

字型、提示文字與焦點顏色是以 <style> 插入 <head>,選擇器為全域的 .pd-md-editor。同一頁有多個編輯器時,後建立的設定會覆蓋先前的。

實例屬性

屬性 型別 說明
body HTMLElement 編輯器容器(contentEditable),每一列是一個 <div>
text string(唯讀) 以 \n 串接各列的 innerText,工具列除外
viewer MDViewer 綁定的預覽器;由 MDViewer 的 sync.editor 自動設定
deployKey string 只在 nanomd.pardn.io 的部署功能使用

已棄用的頂層選項(mode、fillMode、placeholder 等)見 已棄用 API。

EN