亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

在開始本章正式內(nèi)容之前先補(bǔ)充講一下前面章節(jié)沒有講到的一個(gè)小細(xì)節(jié)問題。

在我們每次關(guān)閉DevEco Studio不要直接點(diǎn)擊右上角的關(guān)閉按鈕,而是選擇菜單“文件 > 關(guān)閉項(xiàng)目”

「鴻蒙開發(fā) 5」華為鴻蒙應(yīng)用開發(fā)的JavaScript UI設(shè)計(jì)概述

 

這樣我們就回到了歡迎界面

「鴻蒙開發(fā) 5」華為鴻蒙應(yīng)用開發(fā)的JavaScript UI設(shè)計(jì)概述

 

當(dāng)我們下次啟動(dòng)程序的時(shí)候顯示的就是歡迎界面,而不是直接進(jìn)入上次編輯的項(xiàng)目界面。

本章目標(biāo):

了解華為鴻蒙應(yīng)用開發(fā)的JavaScript UI

 

啟動(dòng)DevEco Studio,打開我們在「鴻蒙開發(fā) 2」第一個(gè)華為鴻蒙(HarmonyOS)應(yīng)用程序(App)章節(jié)中創(chuàng)建的項(xiàng)目HelloWorld。

「鴻蒙開發(fā) 5」華為鴻蒙應(yīng)用開發(fā)的JavaScript UI設(shè)計(jì)概述

 

 

然后展開 pages 目錄下的兩個(gè)頁面對應(yīng)的目錄,我們可以看到每個(gè)頁面都包含了三個(gè)文件。

「鴻蒙開發(fā) 5」華為鴻蒙應(yīng)用開發(fā)的JavaScript UI設(shè)計(jì)概述

 

這就是JAVAScript UI所包含的結(jié)構(gòu)(HML)、表現(xiàn)(css)和邏輯(JavaScript)共3個(gè)主要部分:

(1)HML:鴻蒙標(biāo)記語言(HarmonyOS Markup Language),用于定義用戶界面的結(jié)構(gòu)。通過HML編寫的界面結(jié)構(gòu)文件后綴名為.hml,因此HML既是一門語言,也是一種文件類型。要特別注意,雖然HML與html語法相似,但是仍然存在很多區(qū)別。

(2)CSS:層疊樣式表(Cascading Style Sheets),用于定義如何顯示HML組件。

(3)JavaScript:一種解釋性腳本語言,用于處理用戶界面的簡單業(yè)務(wù)邏輯,支持ECMAScript 6語法。

簡言之,就是HML用于構(gòu)建頁面,CSS用于美化頁面,JavaScript用于處理用戶與頁面的交互。

這里和Web開發(fā)的html,css,javascript很類似,但不完全一樣。

JavaScript UI支持手機(jī)(Phone)、平板(Tablet)、智慧屏(TV)或智能穿戴(Wearable)等設(shè)備的應(yīng)用開發(fā)。

我們在第2章中用于跳轉(zhuǎn)頁面時(shí)用到了JavaScript UI的router模塊

<!-- index.js -->
import router from '@system.router';

export default {
    launch() {
        router.push({
            uri: 'pages/details/details'
        })
    }
}

router模塊主要包含以下方法:

(1)push(obj:IForwardPara):跳轉(zhuǎn)到另外一個(gè)頁面,而且原先的頁面仍然存在,只是被遮蓋而已。通過IForwardPara可以定義跳轉(zhuǎn)的頁面和傳遞的數(shù)據(jù),分別通過其URL屬性和params屬性定義。

(2)replace(obj:IForwardPara):跳轉(zhuǎn)到另外一個(gè)頁面,并銷毀當(dāng)前頁面。通過IForwardPara可以定義跳轉(zhuǎn)的頁面和傳遞的數(shù)據(jù),分別通過其URL屬性和params屬性定義。

(3)back(obj?:IBackPara):返回上一個(gè)頁面。通過IBackPara可以定義返回的頁面路徑(可選),通過該對象內(nèi)的path屬性定義。

(4)clear():清除被遮蓋的頁面,僅保留當(dāng)前顯示的頁面。

(5)getLength():獲取當(dāng)前頁面棧長度,即棧內(nèi)頁面數(shù)量。

(6)getState():獲取當(dāng)前頁面棧狀態(tài),返回IRouterState對象,該對象包括index、name和path共3個(gè)變量。index變量為整型,表示當(dāng)前頁面所在頁面棧的位置,從底層到頂層是從1開始計(jì)數(shù)的。name為字符串,表示當(dāng)前頁面文件名。path為字符串,表示當(dāng)前頁面的路徑。

還有我們在launch()方法中用router模塊的push方法調(diào)用的uri地址是哪里來的呢?

我們打開“Main > config.json”文件,定位到“js”字段

「鴻蒙開發(fā) 5」華為鴻蒙應(yīng)用開發(fā)的JavaScript UI設(shè)計(jì)概述

 

這是我們創(chuàng)建頁面時(shí)DecEco Studio為我們自動(dòng)添加的。

現(xiàn)在我們可以修改一下第二個(gè)頁面,添加一個(gè)按鈕,點(diǎn)擊按鈕后可以回到第一個(gè)頁面,以便更好地理解這些知識。

1 選擇“entry > src > main > js > default > pages >detail”,打開detail.hml文件,添加一個(gè)按鈕

<div class="container">
    <text class="text">
        Hi, I'm always here.
    </text>
<!-- 添加一個(gè)按鈕 -->
    <button class="button" type="capsule" value="Back" onclick="back"></button>
</div>

2 打開detail.css文件,添加按鈕的樣式

/* class選擇器,在hml文件中定義的class屬性,這里就是class="button" */
.button{
    width: 240px;
    height: 60px;
    background-color: #007dff;
    font-size: 30px;
    text-color: white;
    margin-top: 20px;
}

3 打開detail.js,實(shí)現(xiàn)返回第一個(gè)頁面的跳轉(zhuǎn)

// detail.js
import router from '@system.router';

export default {
    back() {
        router.push({
            uri: 'pages/index/index'    // 這里的地址是在config.json中已經(jīng)定義好的
        });
    }
}

注:其實(shí)這里我們可以直接使用router.back();就可以實(shí)現(xiàn)返回的功能了。

4 打開預(yù)覽器Previewer,點(diǎn)擊Back按鈕,我們可以看到功能已經(jīng)實(shí)現(xiàn)了。

「鴻蒙開發(fā) 5」華為鴻蒙應(yīng)用開發(fā)的JavaScript UI設(shè)計(jì)概述

 

分享到:
標(biāo)簽:JavaScript UI
用戶無頭像

網(wǎng)友整理

注冊時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定