2024-08-23|閱讀時間 ‧ 約 24 分鐘

[AI線上應用實戰] Bubble.io Workflow以及Backend Workflow

    系列文章傳送門:[AI線上應用實戰] 如何快速建立你的AI線上應用 使用Bubble.io #Bubble.io教學


    在使用Bubble.io時,想要讓網頁動起來、具有某些動作邏輯(e.g. 當使用者點擊按鈕,就將使用者登入),就必須依靠撰寫Workflow。

    Workflow的操作非常直白,每個元件也可以透過Attribute選單中的Add/Edit Workflow輕鬆加入對應的workflow。


    基本Workflow使用

    [比較簡單日後來補]

    注意事項(這篇文章的精華、筆者的血淚)

    使用Bubble io的workflow時,有諸多官方文件沒有提或是你也懶得看的注意事項,與她視覺化呈現給開發者的感受相當不同,要多加注意

    1. 事件執行順序

    這絕對是最坑人之一,表面上workflow有標註Step,但事實上,每個step並不一定照著你指定的順序進行。實際規則如下

    • Frontend Workflow(每個page自己的workflow)原則上按順序進行,但是後者不會等到前者completed就會直接開始。除非後者有使用到Response of Step ... ,來限制前步驟必須有結果才能被後者用到。(筆者稱之為有序non-blocking ASAP動作執行)
    • 如果一個Frontend Workflow有使用任一個Backend workflow,該Backend workflow會立刻在該Frontend Workflow執行時,盡可能地立刻被執行,但如果input有Response of Step ...則會等待該結果。(無序non-blocking ASAP動作執行)
    • 當一個Workflow A使用custom event時,如果custom event有另起Workflow B,則必定先完成Workflow B
    • 前一個step對元件進行state的更新時,後面的step如果有讀取該元件的state,不保證該state會是更新後的狀態。(更新有夠慢原則)



    實際案例

    • 使用audio recorder,創建以下workflow: 當按下停止按鈕,stop recorder,play recorder's saved audio url。如果這樣寫很高機率撥出的音樂會是前一次錄下而不是當下錄下的。


    2. 沒有If-else敘述

    這對會寫程式的開發者來說很困擾,目前已知可行的替代方案是設立兩個workflow,並使用only when來控制,缺點是容易造成程式冗餘,需善用custom event return value來避免












    分享至
    成為作者繼續創作的動力吧!
    從 Google News 追蹤更多 vocus 的最新精選內容從 Google News 追蹤更多 vocus 的最新精選內容

    ECOE的沙龍 的其他內容

    你可能也想看

    發表回應

    成為會員 後即可發表留言
    © 2024 vocus All rights reserved.