一、登錄功能的實現
首先打開在線編輯器進入我們的項目:https://editor.ivx.cn/
上一節我們已經完成了基本頁面的制作,在本節中,我們將會開始完成登錄功能的實現。
實現登錄功能需要增加一個用戶組件:
這個用戶組件是需要選擇(點擊)后臺后才可以在左側的組件面板中出現,當你選擇了某個對象樹中的組件后,主鍵面板將會出現當前空間能夠添加的組件,在這里點擊后臺后將組件添加到項目之中:
此時咱們可以重命名私有用戶組件為“用戶”,使項目更加清晰:
接著點擊用戶添加的組件,咱們可以在彈出來的面板中查看當前組件的內容:
二、 獲取手機短信
從內容上看,我們可以知道,當前組件就是一個數據庫,存儲了用戶信息,但這個組件與常規數據庫不同,用戶組件自帶了很多方法,可以使我們對用戶的操作更加方便,例如就有我們等下需要使用到的“獲取手機注冊短信”動作。
此時咱們點擊獲取驗證碼文本,給這個文本添加事件:
添加點擊事件后,動作選擇的對象是用戶組件對象,并且我們可以看到選擇用戶組件對象后,在動作中可以看到獲取用戶短信動作:
接著,選擇獲取短信驗證碼后,需要給當前動作傳入對應的參數內容:
此時我們暫時不需要使用圖片驗證碼ID,咱們直接使用手機號進行注冊,但是在此需要注意,我們在類型處需要選擇是注冊驗證,若你在登錄時獲取驗證碼,需要更改此處的類型為登錄驗證:
在此還需要注意無需驗證碼選項需要更改為否:
手機號則為輸入框中的內容:
此時獲取驗證碼還需要進行充值,驗證碼服務并不是免費的,你充值5塊錢做測試已經可以用很久很久了:
此時咱們輸入手機號獲取短信,成功獲取:
三、 驗證碼倒計時
正常情況下,驗證碼應該是可以倒計時的,但是此時咱們的驗證碼并沒有倒計時:
沒有倒計時對用戶并不友好,咱們需要制作一個用戶倒計時的內容。首先倒計時一個從60秒倒計時到1秒的這一個過程,我們需要每次遞減1,那么此時必然需要使用一個變量存儲一個倒計時的量,隨后使用觸發器,使倒計時能夠遞減。
那么第一步創建一個變量存儲倒計時的秒數:
此時還需要給與一個默認值 60:
接著創建一個倒計時的觸發器,使其點擊了發送驗證碼按鈕后能夠觸發,觸發后在觸發器內部使倒計時變量能夠每次減一:
隨后設置觸發的時間間隔為 1:
接著直接給這個觸發器一個時間,當觸發時,倒計時變量減1即可:
此時還需要使這個倒計時能夠顯示到點擊的文本之上,這時你可能會覺得直接做數據綁定就可以了,但是如果你做數據綁定,那么那么按鈕就不會一直顯示“發送驗證碼”文本,所以此時咱們只需要直接添加一個動作,每次減一,更改對應文本的值即可:
最后在發送驗證碼文本處添加對觸發器的響應,即可完成倒計時制作:
四、 出現的bug如何解決
此時我們發現倒計時可以到負數,那么如何解決這個 bug 呢?
那么此時我們就需要進行條件設置了,增加條件,在倒計時變量值大于0時才可以進行減值:
此時還有一個bug,當你重復點擊這個文本時,將會頻繁的發送驗證碼,咱們得做一個限制“當倒計時數為60時,也就是沒有減值時可以發送”,那么條件如下:
此時還會存在一個問題,當倒計時變量小于等于0時,我們應該對這個變量重新賦值為60,并且也需要更改文本為原裝,那么條件如下:
此時當倒計時數小于0后,還需要重新重置為原本的樣子,最重要的還有一點,一定要當前觸發器暫停,否則會一直觸發。