新聞中心
JS UI 框架支持純 JavaScript、JavaScript 和 Java 混合語言開發(fā)。JS FA 指基于 JavaScript 或 JavaScript 和 Java混合開發(fā)的 FA,下面主要介紹:JS FA 在 HarmonyOS 上運行時需要的基類 AceAbility、加載 JS FA 主體的方法、JS FA 開發(fā)目錄。

十多年的和田縣網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整和田縣建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“和田縣網(wǎng)站設(shè)計”,“和田縣網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
AceAbility
AceAbility 類是 JS FA 在 HarmonyOS 上運行環(huán)境的基類,繼承自 Ability。開發(fā)者的應(yīng)用運行入口類應(yīng)該從該類派生,代碼示例如下:
public class MainAbility extends AceAbility {
@Override
public void onStart(Intent intent) {
super.onStart(intent);
}
@Override
public void onStop() {
super.onStop();
}
}如何加載 JS FA
JS FA 生命周期事件分為應(yīng)用生命周期和頁面生命周期,應(yīng)用通過 AceAbility 類中setInstanceName() 接口設(shè)置該 Ability 的實例資源,并通過 AceAbility 窗口進行顯示以及全局應(yīng)用生命周期管理。
setInstanceName(String name)的參數(shù)“name”指實例名稱,實例名稱與config.json 文件中 profile.application.js.name 的值對應(yīng)。若開發(fā)者未修改實例名,而使用了缺省值 default,則無需調(diào)用此接口。若開發(fā)者修改了實例名,則需在應(yīng)用 Ability 實例的 onStart()中調(diào)用此接口,并將參數(shù)“name”設(shè)置為修改后的實例名稱。
說明
多實例應(yīng)用的 profile.application.js 字段中有多個實例項,使用時請選擇相應(yīng)的實例名稱。
setInstanceName() 接口使用方法:在 MainAbility 的 onStart() 中的 super.onStart() 前調(diào)用此接口。以 JSComponentName 作為實例名稱,代碼示例如下:
public class MainAbility extends AceAbility {
@Override
public void onStart(Intent intent) {
setInstanceName("JSComponentName"); // config.json配置文件中ability.js.name的標(biāo)簽值。
super.onStart(intent);
}
}說明
需在 super.onStart(Intent) 前調(diào)用此接口。
JS FA開發(fā)目錄
新建工程的 JS 目錄如下圖所示。
在工程目錄中:common 文件夾主要存放公共資源,如圖片、視頻等;i18n 下存放多語言的 json 文件;pages 文件夾下存放多個頁面,每個頁面由 hml、css 和 js 文件組成。
- main > js > default > i18n > en-US.json:
此文件定義了在英文模式下頁面顯示的變量內(nèi)容。同理,zh-CN.json 中定義了中文模式下的頁面內(nèi)容。
{
"strings": {
"hello": "Hello",
"world": "World"
},
"files": {
}
}- main > js > default > pages > index > index.hml:
此文件定義了 index 頁面的布局、index 頁面中用到的組件,以及這些組件的層級關(guān)系。例如:index.hml 文件中包含了一個 text 組件,內(nèi)容為 “Hello World” 文本。
{{ $t('strings.hello') }} {{title}}
- main > js > default > pages > index > index.css:
此文件定義了 index 頁面的樣式。例如:index.css 文件定義了“container”和 “title” 的樣式。
.container {
flex-direction: column;
justify-content: center;
align-items: center;
}
.title {
font-size: 100px;
}- main > js > default > pages > index > index.js:
此文件定義了 index 頁面的業(yè)務(wù)邏輯,比如數(shù)據(jù)綁定、事件處理等。例如:變量 “title”賦值為字符串 “World” 。
export default {
data: {
title: '',
},
onInit() {
this.title = this.$t('strings.world');
},
} 網(wǎng)站欄目:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OS JS FA概述
轉(zhuǎn)載來源:http://www.dlmjj.cn/article/djjiopc.html


咨詢
建站咨詢
