พัฒนาWidgets
รายการของฟอร์ม
แสดงรายการชนิดที่คุณกำหนดเป็นการ์ดให้ผู้ใช้ค้นหาและเลือก และเริ่มรายการใหม่ได้ ผลลัพธ์กลับมาเป็นข้อความ select และ create
widget item-list แสดงรายการ (Item) ที่ผู้ใช้เข้าถึงได้ในทุกโฟลเดอร์ และส่งรายการที่ผู้ใช้เลือกกลับไปที่หน้าของคุณ
URL และพารามิเตอร์
widget อยู่ที่ <site>/widgets/item-list พารามิเตอร์ที่ใช้ร่วมกันอยู่ใน Widgets
| พารามิเตอร์ | ความหมาย | จำเป็น |
|---|---|---|
types | ชนิดของรายการที่จะแสดง คั่นด้วยจุลภาค เช่น form ไม่ใส่ แสดงทุกชนิด | ไม่ |
subtypes | ชนิดย่อยที่จะแสดง คั่นด้วยจุลภาค | ไม่ |
creatable_types | ชนิดที่มีการ์ดเริ่มรายการใหม่ ใช้ได้ webMap application form คั่นด้วยจุลภาค | ไม่ |
creatable_subtypes | หน้านี้รับค่าแต่ไม่ใช้ | ไม่ |
ข้อความ
| action | ทิศทาง | payload |
|---|---|---|
select | widget ถึงหน้าของคุณ | รายการที่ผู้ใช้กด เป็น JSON ของรายการ ใช้ _id และ name |
create | widget ถึงหน้าของคุณ | { type } ชนิดของการ์ดเริ่มรายการใหม่ที่ผู้ใช้กด |
widget นี้ไม่ส่ง ready และไม่อ่าน post-widget-parameters ใส่ทุกค่าใน URL widget ส่ง error และ close-with-error ตาม Widgets
widget ไม่สร้างรายการให้ create บอกเพียงว่าผู้ใช้อยากสร้างชนิดไหน คุณเป็นคนสร้างต่อเอง
ตัวอย่าง
embedParams คือพารามิเตอร์ร่วมจาก Widgets
const params = new URLSearchParams({
...embedParams,
types: 'form',
creatable_types: 'form',
})
frame.src = `${site}/widgets/item-list?${params}`
addEventListener('message', (e) => {
if (e.origin !== site || e.data.messageToken !== messageToken) return
if (e.data.action === 'select') openForm(e.data.payload._id)
if (e.data.action === 'create') newForm()
})