日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

梅科尔工作室--梁嘉莹-鸿蒙笔记3

發布時間:2024/3/13 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 梅科尔工作室--梁嘉莹-鸿蒙笔记3 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

List組件

子組件

接口

語法?

父子組件

組件導出

雙向數據綁定

if-else渲染

使用語法

注意事項

for循環渲染

使用語法

注意事項?


List組件

子組件:

Listitem?

接口:

List(value?:{space?: number | string, initialIndex?: number, scroller?: Scroller})

屬性?

?

語法?

List({space:20}) {ListItem(){Text(1).fontSize(30).width("100%").height("10%").backgroundColor("#FFC0CB").textAlign(TextAlign.Center).borderRadius(20)}ListItem(){Text(2).fontSize(30).width("100%").height("10%").backgroundColor("#FFC0CB").textAlign(TextAlign.Center).borderRadius(20)}ListItem(){Text(3).fontSize(30).width("100%").height("10%").backgroundColor("#FFC0CB").textAlign(TextAlign.Center).borderRadius(20)}}

效果如下(上下拉有彈性)

?

在List組件外面用.edgeEffect(EdgeEffect.None)?就可以消除彈性

父子組件

父組件:

子組件 (自定義組件)

?子組件不能直接預覽,必須導入父組件才行。

  • 組件導出

子組件導出用export語句

export struct child{

父組件導入用import{子組件文件名稱}from "子組件文件相對路徑"

import {zidingyi} from "../common/component/child"

  • 雙向數據綁定

改變任何一方數據時:兩方數據都會變為改變的一方數據

子組件中數據用@Link修飾:

@Link childnum:string

還要把子組件頁面里的Text或者其他組件里的值寫成? this.childnum

父組件中用@State修飾,在子組件接口中數據用$修飾:

@State fathernum:string = "父組件"

child({childnum:$fathernum})

if-else渲染

使用語法

if/else渲染可以改變組件的渲染狀態,即決定組件是否在頁面中被渲染,if括號內的變量是true的話,則對應下的組件都被渲染,否則都不被渲染。

if() {語句 }

注意事項

必須在容器組件內使用。

使用if/else可以使子組件的渲染依賴條件語句。


for循環渲染

開發框架提供循環渲染(ForEach組件)來迭代數組,并為每個數組創建相應的組件。

ForEach定義如下:

使用語法

@Entry @Component struct Index {@State numlist:number[]= [0,1,2,3,4,5,6,7,8,9]@State num:number = 1build() {Column() {Text("列表").fontSize(30)List({space:20}) {ForEach(this.numlist,(item)=>{ListItem(){Text(item.toString()) //item是指數組里的數字,toString是把數字轉化為字符.fontSize(30).width("100%").height("10%").backgroundColor("#FFC0CB").textAlign(TextAlign.Center).borderRadius(20)}})}}.height('100%').width("100%").justifyContent(FlexAlign.Center).alignItems(HorizontalAlign.Center)} }

注意事項?

必須在容器組件內使用。

生成的子組件允許在ForEach的父容器組件中,允許子組件生成器函數中包含if/else條件渲染,同時也允許ForEach包含在if/else條件渲染語句中;

總結

以上是生活随笔為你收集整理的梅科尔工作室--梁嘉莹-鸿蒙笔记3的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。