本文主要描述对鸿蒙幻灯片组件、跑马灯组件、提示框、提示菜单、页面跳转以及对话框的应用javascript
幻灯片组件:<image-animator>css
视图及样式:java
<div class="container"> <div class="c1"> <!--幻灯片组件--> <image-animator class="image-animator" duration="10s" fixedsize="false" images="{{imagesDatas}}"> </image-animator> </div> </div>
.container { width: 100%; height: 1500px; display: flex; flex-direction: column; } .c1{ width: 100%; height: 35%; } .image-animator{ width: 100%; height: 100%; }
业务逻辑层经过fetch请求向nginx反向代理服务请求所需数据nginx
import fetch from '@system.fetch'; export default { data: { imagesDatas:[] }, onInit(){ fetch.fetch({ //url对应的地址为经过内网穿透工具natapp映射出的nginx反向代理服务的地址 url:'http://ibk3v7.natappfree.cc/text/images0.json', responseType:"json", success:(resp)=>{ let datas = JSON.parse(resp.data); this.imagesDatas = datas.imagedatas; } }); }
images0.json文件中定义的数据:json
效果图(图片是能够自动播放的):app
跑马灯组件:<marquee>ide
<div class="container"> <marquee>金牛辞旧岁,万里贺新春。让快乐与你同行,让健康与你相伴,将美好与团圆满满托付于你</marquee> </div>
效果图:工具
鸿蒙的弹出菜单、提示框、页面跳转的应用post
视图和样式:学习
<div class="container"> <div class="c1"> <!--幻灯片组件--> <!-- <image-animator class="image-animator" duration="10s" fixedsize="false" images="{{imagesDatas}}">--> <!-- </image-animator>--> </div> <div class="c2"> <button onclick="clickbutton">我是个点击按钮</button> </div> <!--弹出菜单--> <menu id="menuid" onselected="selectmenu"> <option value="aaa">aaa</option> <option value="bbb">bbb</option> <option value="ccc">ccc</option> </menu> </div>
.container { width: 100%; height: 1500px; display: flex; flex-direction: column; } .c1{ width: 100%; height: 35%; } .c2{ width: 100%; height: 8%; }
业务逻辑层:
import prompt from '@system.prompt'; import router from '@system.router'; export default { data: { }, //点击按钮触发 弹出显示菜单 事件 clickbutton(){ //显示id为 menuid 的菜单,此菜单出现位置默认为屏幕左上角原点,可经过在show()中添加坐标来改变 //this.$element("menuid").show(); this.$element("menuid").show({ x:100, y:550 }); }, //选中弹出菜单中的项触发事件 selectmenu(e){ let path = e.value; //鸿蒙的提示框 prompt.showToast({ message:path }); if(path=="aaa"){ //鸿蒙提供的页面跳转 router.push({ uri:'pages/aaa/aaa' }); }else if(path=="bbb"){ router.push({ uri:'pages/bbb/bbb' }); }else if(path=="ccc"){ router.push({ uri:'pages/ccc/ccc' }); } } }
效果图(点击按钮弹出菜单后点击对应菜单触发跳转页面的事件):
文章后续内容和相关附件能够点击下面的原文连接前往学习
原文连接:https://harmonyos.51cto.com/posts/2963#bkwz