Asgard 內建輔助函數
Asgard 為 Handlebars 模板系統提供 8 個專用的內建輔助函數。
📖 基礎 Handlebars 語法
建議先閱讀 Handlebars 官方指南 了解基本語法。
對話歷史函數
history
透過指定的索引區間,取得目前頻道的歷史對話紀錄清單
參數:
start
:起始位置(0 開始,支援負數倒數)end
:結束位置(包含該位置,支援負數倒數)
historySize
取得目前頻道的歷史對話紀錄數量
資料處理函數
toJson
將任意值轉換成 JSON 格式的字串
urlEncode
將字串進行 URL 編碼
xpathExtract
利用 XPath 在 XML 文件中進行查找
參數:
xml
:XML 文件內容path
:XPath 查詢語法
範例:
<!-- 輸入 XML:<root><item>1</item><item>2</item></root> -->
<!-- 輸出:1\n2 -->
vecToStr
將向量陣列轉換為字串格式
參數:
vector
:向量陣列prefix
:開頭字符suffix
:結尾字符delimiter
:分隔符
日期時間函數
isoNow
回傳特定時區當前日期時間的 RFC3339 格式字串
isoToday
回傳特定時區當前日期的 RFC3339 格式字串
實用範例
系統狀態報告
API 查詢處理
最佳實踐
- 對話歷史:使用
history
和historySize
實現上下文感知 - 資料安全:URL 參數務必使用
urlEncode
編碼 - 時區處理:明確指定時區參數
- JSON 格式:使用
toJson
確保正確的 JSON 輸出 - XML 查詢:確保 XPath 語法正確
- 向量處理:根據需求選擇適當的分隔符
這些內建函數讓您能在 Handlebars 模板中輕鬆處理對話歷史、資料轉換和格式化需求。