基于JavaScript實(shí)現(xiàn)HarmonyOS備忘錄服務(wù)卡片
一、前言
HarmonyOS發(fā)布,服務(wù)卡片成為了亮點(diǎn)之一。那么除了開(kāi)發(fā)應(yīng)用,服務(wù)卡片也成了必學(xué)的知識(shí)。備忘錄是現(xiàn)在每臺(tái)手機(jī)都會(huì)自帶的一個(gè)應(yīng)用,然后我們想看自己記錄的備忘事件,都需要找到這個(gè)應(yīng)用并打開(kāi),而服務(wù)卡片則可以幫我們省下這個(gè)步驟。接下來(lái),我們一起看看如何用 JS 來(lái)實(shí)現(xiàn)一個(gè)服務(wù)卡片。
二、實(shí)現(xiàn)效果
想要在有限的空間內(nèi),展示出多一點(diǎn)的內(nèi)容,通過(guò)列表的形式,把每條備忘事項(xiàng)給展示出來(lái)。
效果如圖:

在圖中的服務(wù)卡片上,可以上下滑動(dòng),看到每條備忘事項(xiàng),超出的內(nèi)容用省略號(hào)展示,畢竟空間有限,而從已有的信息中也能大概回憶起是什么內(nèi)容。那么接下來(lái)我們一起看如何實(shí)現(xiàn)這樣的一個(gè)卡片。
三、創(chuàng)建工程
首先我們用IDE(DevEco Studio)創(chuàng)建一個(gè) JS 項(xiàng)目,因?yàn)榉?wù)卡片是基于一個(gè)應(yīng)用的,所以要先創(chuàng)建一個(gè)應(yīng)用的工程項(xiàng)目,然后再創(chuàng)建應(yīng)用的服務(wù)卡片。打開(kāi)IDE,選擇Create HamonyOS Project,然后選擇 Empty Ability(JS),這里我們選擇的是空的JS項(xiàng)目,適合web前端開(kāi)發(fā)人員上手。簡(jiǎn)單完成了一個(gè) Hello World 應(yīng)用工程的創(chuàng)建。
四、生成服務(wù)卡片
在生成的工程項(xiàng)目上,生成一個(gè)服務(wù)卡片,如圖所示:

選中 Service Widget,可以選擇模板,下一步填上服務(wù)卡片的基本信息,就可以了。

完成之后,可以看到在原來(lái)的項(xiàng)目目錄中多了一個(gè) widget 的文件夾,就是我們服務(wù)卡片的主要代碼目錄了。打開(kāi) widget/page/index/index.hml 就是我們剛才選中的模板代碼了。這些代碼顯然不是我們要實(shí)現(xiàn)備忘錄的布局,那我們刪掉,自己實(shí)現(xiàn)。從效果圖可以看到,布局主要分為兩塊,頭部用來(lái)顯示標(biāo)題,中間用來(lái)展示內(nèi)容并可以滾動(dòng)。那么頭部用div組件,內(nèi)容用list組件來(lái)實(shí)現(xiàn),
代碼如下:
<div class="image_with_info_layout">
<div class="header">
<text>
<span class="header-text">備忘錄</span>
</text>
</div>
<list class="list">
<list-item class="list-item">
<text class="list-text">
<span>18號(hào)要參加618活動(dòng)</span>
</text>
</list-item>
<list-item class="list-item">
<text class="list-text">
<span>某某某欠我2塊錢</span>
</text>
</list-item>
<list-item class="list-item">
<text class="list-text">
<span>論壇賬號(hào)密碼是123xxxxxxxx</span>
</text>
</list-item>
<list-item class="list-item">
<text class="list-text">
<span>震驚!這件事的真相居然是這樣</span>
</text>
</list-item>
<list-item class="list-item">
<text class="list-text">
<span>隱藏的備忘,你看到了嗎</span>
</text>
</list-item>
</list>
</div>在 index.css 中,來(lái)實(shí)現(xiàn)樣式,達(dá)到我們想要的效果:
.header{
width: 100%;
height: 35px;
background-color: #ff9900;
padding-left: 10px;
}
.header-text{
font-size: 16px;
color: #fff;
}
.list{
width: 100%;
height: 140px;
padding-left: 10px;
}
.list-item{
padding: 5px 1px 5px 2px;
border-bottom: 1px solid #ddd;
}
.list-text{
font-size: 14px;
text-overflow:ellipsis;
}五、調(diào)試預(yù)覽
就這樣,一個(gè)JS應(yīng)用的服務(wù)卡片完成,在IDE上,我們可以在菜單欄上的 View->Tool Windows->previewer 在開(kāi)發(fā)過(guò)程中進(jìn)行頁(yè)面的調(diào)試預(yù)覽,修改好代碼之后保存即可刷新效果。在完成開(kāi)發(fā)之后,可以在菜單欄上的 Tools->device manager 開(kāi)啟一個(gè)手機(jī)模擬器(需要登錄)。

然后運(yùn)行應(yīng)用,就會(huì)在模擬器中安裝了JS應(yīng)用

在應(yīng)用圖標(biāo)上滑,則可以看到我們實(shí)現(xiàn)的服務(wù)卡片了。到此卡片功能完成,目前簡(jiǎn)單的代碼只實(shí)現(xiàn)了備忘錄的查看功能,比如編輯和刪除,有興趣的可以嘗試看如何實(shí)現(xiàn)。
到此這篇關(guān)于基于JavaScript實(shí)現(xiàn)HarmonyOS備忘錄服務(wù)卡片的文章就介紹到這了,更多相關(guān)JS 實(shí)現(xiàn)服務(wù)卡片內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
微信JS-SDK自定義分享功能實(shí)例詳解【分享給朋友/分享到朋友圈】
這篇文章主要介紹了微信JS-SDK自定義分享功能,結(jié)合實(shí)例形式分析了基于JS-SDK接口實(shí)現(xiàn)的分享給朋友及分享到朋友圈等功能的相關(guān)配置文件與數(shù)據(jù)操作技巧,需要的朋友可以參考下2016-11-11
javascript中的self和this用法小結(jié)
本篇文章主要是對(duì)javascript中的self和this用法進(jìn)行了詳細(xì)的總結(jié)介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02
javascript自執(zhí)行函數(shù)之偽命名空間封裝法
比較之后,我們可以發(fā)現(xiàn),第二方法更加的直觀,易于理解。但是少了封裝過(guò)程,代碼完全裸露在外。2010-12-12
JavaScript中數(shù)組Array.sort()排序方法詳解
本篇文章主要介紹了JavaScript中數(shù)組Array.sort()的排序方法。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-03-03
JS動(dòng)態(tài)修改iframe高度和寬度的方法
這篇文章主要介紹了JS動(dòng)態(tài)修改iframe高度和寬度的方法,實(shí)例分析了javascript操作iframe屬性的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04
現(xiàn)代 JavaScript 開(kāi)發(fā)編程風(fēng)格Idiomatic.js指南中文版
下面的章節(jié)描述的是一個(gè) 合理 的現(xiàn)代 JavaScript 開(kāi)發(fā)風(fēng)格指南,并非硬性規(guī)定。其想送出的核心理念是高度統(tǒng)一的代碼風(fēng)格(the law of code style consistency)。2014-05-05
echarts學(xué)習(xí)之如何給餅圖中間添加文字
這篇文章主要介紹了echarts學(xué)習(xí)之如何給餅圖中間添加文字問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03
教你如何自定義百度分享插件以及bshare分享插件的分享按鈕
在項(xiàng)目中我們常用到百度分享插件或者bshare分享插件,雖然官方都有自定義按鈕的功能,但是畢竟還是只有少數(shù)幾種,我們?nèi)绾蝸?lái)制作有自己特色的分享按鈕呢?2014-06-06
微信小程序開(kāi)發(fā)中生命周期的詳細(xì)介紹
生命周期是指一個(gè)對(duì)象從創(chuàng)建→>運(yùn)行>銷毀的整個(gè)階段,強(qiáng)調(diào)的是一個(gè)時(shí)間段,文中介紹了小程序中組件的生命周期,需要的朋友可以參考下2023-03-03

