編輯器整合
Bilup 編輯器可以將當前專案直接交給打包器,因此您可以在一步之內從編輯到打包建置,而無需儲存和重新上傳檔案。在底層,這是編輯器和打包器之間的一次小型 postMessage 握手,本文件為工具開發者記錄了它。
握 手
- 編輯器在
https://packager.bilup.org/?import_from=<編輯器來源>開啟打包器。 - 打包器向編輯器回傳
{ p4: { type: 'ready-for-import' } }。 - 編輯器回覆
{ p4: { type: 'start-import' } },這樣打包器可以顯示載入狀態。 - 編輯器匯出專案併發送
{ p4: { type: 'finish-import', data, name } },傳輸 SB3ArrayBuffer。 - 如果匯出失敗,編輯器改為傳送
{ p4: { type: 'cancel-import' } }。
每條訊息都包裹在一個 p4 物件中。
finish-import
source.postMessage({
p4: {
type: 'finish-import',
data: buffer, // SB3 ArrayBuffer
name: 'My Project.sb3'
}
}, origin, [buffer]); // buffer 被轉移,而不是複製
備註
- 編輯器只處理來源為
https://packager.bilup.org的訊息。 - SB3 用
vm.saveProjectSb3('arraybuffer')生成。 - 檔名是當前專案標題加
.sb3字尾。