控件的封装一共有三种方法,我们之前用的那种内部封装只是其中一种,用的最多的应该是外部封装,我首先在外部创建一个文件夹,叫component,然后在里面创建一个ets的文件,将写好的组件直接粘贴进去,就可以开始操作了
(1)创建ets文件,将写好的组件放进去
(2)将写好的文件导出(最后一行加上这个就可以)
export default LoginInput
(3)在需要引用这个组件的页面引入进去就可以了
import LoginInput from '../component/LoginInput'
还有一种方法可以封装控件
Builder:装饰器 修饰build方法 用于控件的封装
这个的使用方法如下:
(1)创建一个方法,前面加上@Builder修饰,然后再方法里面写自己想要的东西
@Builder loginBtn(){ Button("登录") .width("100%") .margin({ top: 16 }) .onClick(()=>{ router.push({ url:"pages/HomePage", params:{username:"张三"} }) }) }
(2)在需要的位置调用方法即可
this.loginBtn()
再说一下生命周期!
(1)onPageShow这个是页面显示的时候触发的
(2)onPageHide这个是页面隐藏的时候触发的
onPageShow(){
console.info("页面显示的时候")
}
onPageHide(){
console.info("页面隐藏的时候")
}
onBackPress(){
console.info("返回按钮,按下时回调")
}
接着我还用了list列表,首先写一个list方法,然后里面写listitem方法,剩下的就是在tiem里面正常写内容就可以了,代码如下:
build() {
List() {
ListItem() {
Text("列表一")
.fontSize(20)
.fontColor(Color.Red)
}
ListItem() {
Text("列表二")
.fontSize(20)
.fontColor(Color.Red)
}
ListItem() {
Text("列表三")
.fontSize(20)
.fontColor(Color.Red)
}
}
}
今天太晚了,明天继续干!