本項目Gitee倉地址:深入淺出eTs學習: 帶大家深入淺出學習eTs (gitee.com)
一、基本界面
本項目基于#深入淺出學習eTs#(四)登陸界面UI,繼續進行,實現一個判斷的功能
二、控件介紹
TextInput
可以輸入單行文本并支持響應輸入事件的組件。
interface TextInputInterface {
(value?: TextInputOptions): TextInputAttribute;
}
declare interface TextInputOptions {
placeholder?: ResourceStr;
text?: ResourceStr;
controller?: TextInputController;
}
定義如上,其中placeholder代表默認顯示的內容,lesson4中該部分程序如下:
TextInput({ placeholder: "我的QQ帳號" })
.width("270vp")
.height("50vp")
.flexShrink(0)
TextInput({ placeholder: "**********" })
.width("270vp")
.height("50vp")
.flexShrink(0)
.type(InputType.Password)
其定義也是先對控件類型進行聲明,然后對基本屬性進行設置
事件
名稱 | 功能描述 |
---|---|
onChange(value: string) => void | 輸入發生變化時,觸發回調。 |
其中重要的是這個內容,當內容發生改變時,需要對變量進行重新幅值
三、按鍵綁定
在確認需求后,我們要做的就是對兩個輸入框的內容進行判斷,首先設置一個點擊函數
Button("登 錄")
.width("250vp")
.height("60vp")
.fontSize("31fp")
.onClick(() => {
})
然后將兩個輸入框的內容進行變量綁定
@State QQ: string = '110xxxx'
@State Password: string = '123456'
TextInput({ placeholder: this.QQ })
.width("270vp")
.height("50vp")
.flexShrink(0)
.onChange((value: string) => {
this.QQ = value
})
TextInput({ placeholder: this.Password })
.width("270vp")
.height("50vp")
.flexShrink(0)
.type(InputType.Password)
當按鍵按下后對輸入框內容進行判斷
if(this.QQ == "11066")
{
this.Password = '登錄成功'
}else
{
this.Password = '登錄失敗'
}
我們這里進行一個簡單的判斷(似乎模擬器有BUG,不能進行輸入,下個章節我看下怎么解決這個問題,這次采用直接賦值this.QQ的方式完成判斷)
四、整體測試
當輸入內容為110xxxx時,點擊登錄,在密碼框提示登錄失敗
當輸入框為11066時,點擊輸入框,此時得到的反饋為登錄成功
編輯:黃飛
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
ets
+關注
關注
0文章
20瀏覽量
1613 -
OpenHarmony
+關注
關注
25文章
3665瀏覽量
16161
發布評論請先 登錄
相關推薦
評論