日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

鴻蒙支持低代碼開(kāi)發(fā),無(wú)需HTML知識(shí),就可以設(shè)計(jì)復(fù)雜界面

 長(zhǎng)沙7喜 2021-07-06
鴻蒙的最新IDE支持可視化開(kāi)發(fā)。幾乎不需要編寫一行代碼,就可以設(shè)計(jì)非常復(fù)雜的界面。當(dāng)然,如果要實(shí)現(xiàn)業(yè)務(wù)邏輯,還是需要編寫代碼的。所以我們把這些功能稱為低代碼開(kāi)發(fā),也就是說(shuō),可以讓我們少編寫一些代碼。
本文將詳細(xì)介紹如何使用鴻蒙最新的IDE來(lái)設(shè)計(jì)一個(gè)復(fù)雜的界面。首先啟動(dòng)IDE,并創(chuàng)建一個(gè)JS工程。

圖片


由于可視化開(kāi)發(fā)目前只支持JS,所以我們只能用JS工程。
創(chuàng)建完工程后,找到j(luò)s中的pages配置,然后在右鍵菜單中點(diǎn)擊New -> JS Visual菜單項(xiàng),如下圖所示。

圖片

這時(shí)會(huì)彈出一個(gè)對(duì)話框,如下圖所示。

圖片

輸出可視化文件名字,并選中下面的復(fù)選框,然后點(diǎn)擊Finish按鈕創(chuàng)建可視化設(shè)計(jì)器文件。在創(chuàng)建完可視化設(shè)計(jì)器后,會(huì)看到工程樹(shù)中多了一個(gè)supervisual節(jié)點(diǎn),該節(jié)點(diǎn)與pages節(jié)點(diǎn)的目錄結(jié)構(gòu)類似,如下圖所示:

圖片


如果使用Web相關(guān)技術(shù)設(shè)計(jì)界面,有兩種方式。第1種就是傳統(tǒng)的方式,通過(guò)hml文件和css文件設(shè)計(jì)界面,這種方式需要編寫UI代碼。而第2種方式就是本文要講的可視化設(shè)計(jì)器,也就是page.visual文件。其實(shí)該文件是JSON格式的,只是鴻蒙IDE將其解析成可視化形態(tài)。
如果采用第1種方式設(shè)計(jì)界面,必須包含3個(gè)文件:index.js、index.hml和index.css。而如果使用第2種設(shè)計(jì)界面的方式,就不再有index.hml和index.css文件,取而代之的是page.visual文件。也就是說(shuō),如果采用可視化的方式設(shè)計(jì)界面,只有兩個(gè)文件:page.js和page.visual。分別位于pages和supervisual目錄的相應(yīng)子目錄。
現(xiàn)在雙擊page.visual文件,會(huì)看到如下的可視化設(shè)計(jì)區(qū)域:

圖片

在這個(gè)區(qū)域共分為4部分:左上角的組件面板、左下角的組件結(jié)構(gòu)樹(shù)、中間的可視化設(shè)計(jì)器以及右側(cè)的屬性面板。
現(xiàn)在我們就用這個(gè)可視化設(shè)計(jì)器設(shè)計(jì)一個(gè)列表。首先刪除原有的組件。要想繪制一個(gè)列表,需要使用列表組件(List)和列表項(xiàng)組件(ListItem)?,F(xiàn)在首先將列表組件放到設(shè)計(jì)區(qū)域,將列表組件拉動(dòng)到與設(shè)計(jì)界面同樣尺寸,然后拖動(dòng)一個(gè)列表項(xiàng)組件放到列表組件上面?,F(xiàn)在點(diǎn)擊列表項(xiàng)組件,在右側(cè)的屬性面板中切換到第2個(gè)屬性頁(yè),然后設(shè)置列表項(xiàng)的高度為100,設(shè)置后的效果如下圖所示:

圖片

接下來(lái)拖動(dòng)一個(gè)圖像組件(Image)和一個(gè)文本顯示組件(Text)的列表項(xiàng)組件上?,F(xiàn)在點(diǎn)擊文本顯示組件,在右側(cè)的屬性面板中切換到第3個(gè)屬性頁(yè),設(shè)置文本顯示組件的字體尺寸為20,并讓文本組件顯示一個(gè)靜態(tài)的文本,效果由下圖所示:

圖片

到現(xiàn)在為止,所有的可視化設(shè)計(jì)工作全部完成。下一步需要往這個(gè)列表里邊添加數(shù)據(jù)。數(shù)據(jù)來(lái)源可以有多種方式。本例將采用JS數(shù)組定義在列表中顯示的數(shù)據(jù)。
現(xiàn)在切換到index.js文件,并編寫如下代碼:
export default { data: { data:[ { title:'鴻蒙編程思想', image:'common/images/a.png' }, { title:'Python從菜鳥(niǎo)到高手', image:'common/images/b.png' } ] }
其中data數(shù)組就是我們要顯示的列表組件中的數(shù)據(jù)。在data數(shù)組中有兩個(gè)對(duì)象,那一個(gè)對(duì)象定義了兩個(gè)屬性:title和image。分別用于將文本和圖像顯示在Text組件與Image組件中。
最后一步就是需要將data數(shù)組與列表組件綁定,現(xiàn)在切換到可視化設(shè)計(jì)器,點(diǎn)擊列表項(xiàng)組件。在右側(cè)的屬性面板中切換到第1個(gè)屬性頁(yè),然后將itemData屬性值設(shè)置為{{data}},如下圖所示。其中{{data}}就是在index.js中定義的data數(shù)組。現(xiàn)代數(shù)據(jù)已經(jīng)和列表項(xiàng)綁定了。最后需要指定在不同的組件顯示不同的數(shù)據(jù)。

圖片


現(xiàn)在點(diǎn)擊圖像組件,然后在右側(cè)的屬性面板中切換到第1個(gè)屬性頁(yè),并設(shè)置Src屬性的值為{{$item.image}},如下圖所示:

圖片

用同樣的方法設(shè)置文本顯示組件的content屬性的值為{{$item.title}},如下圖所示:

圖片


到顯示為止,列表組件已經(jīng)可以顯示數(shù)據(jù)了,如下圖所示。

圖片


不過(guò)圖像組件沒(méi)有完整顯示圖像,所以可以在右側(cè)的屬性面板中切換到第3個(gè)屬性頁(yè),設(shè)置ObjectFit屬性的值為contain。這時(shí)圖像就可以完整顯示了,有下圖所示。

圖片

在手機(jī)中運(yùn)行程序,會(huì)看到如下的效果,完美地所見(jiàn)即所得,而且無(wú)需編寫一行UI代碼。

圖片


- EOF -

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多