成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

鴻蒙的JS開發部模式14:tabs組件通過Python遠程服務構建項目一

開發
文章由鴻蒙社區產出,想要了解更多內容請前往:51CTO和華為官方戰略合作共建的鴻蒙技術社區https://harmonyos.51cto.com/#zz

[[382675]]

 想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com/#zz

1.DevEco Studio的最新版開發工具新增預覽和調試真的很好用.通過對鴻蒙的tabs和tab-bar組件,tab-content組件動態生成,通過fetch請求python flask服務構建,效果圖如下:


2.python的代碼如下,提供了遠程的web服務,同時通過反向代理服務器nginx提供圖片等靜態資源的服務:

  1. from  flask  import Flask 
  2. from flask  import jsonify 
  3. from  flask  import   request 
  4. import json 
  5.  
  6.  
  7. app=Flask(__name__) 
  8.  
  9.  
  10. @app.route("/data"
  11. def  execData(): 
  12.     print("用戶發起data的請求,執行execData方法"
  13.  
  14.     data1=("許金扉","李永毅","昌立昊"
  15.  
  16.     return jsonify(data1) 
  17.  
  18. @app.route("/querybyname",methods=["POST"]) 
  19. def  queryByName(): 
  20.     if request.method == 'POST'
  21.        print("用戶發起querybyname的請求,執行queryByName方法"
  22.        #data2={"許金扉":"一個女學生","李永毅":"一個揚州的男學生","昌立昊":"一個南京的男學生"
  23.        data2 = {"許金扉":{"text":"女學生","img":"common/customer.png"}, 
  24.                 "李永毅": {"text":"男學生","img":"common/emp.png"}, "昌立昊": {"text":"男學生","img":"common/emp.png"}} 
  25.        # name=request.form.get("cname"
  26.        # print(name
  27.  
  28.        info=request.get_data(as_text=True
  29.        print(info) 
  30.        print(type(info)) 
  31.        name=json.loads(info).get("cname"
  32.        info1=data2.get(name
  33.  
  34.        return jsonify(info1) 
  35.  
  36.  
  37. @app.route("/loadmenu",methods=["GET"]) 
  38. def  loadMenu(): 
  39.     if  request.method=="GET"
  40.         print("加載首頁菜單"
  41.  
  42.         menudatas=[{"text":"首頁","selectIcon":"http://lixin.free.idcfengye.com/images/ones.png"
  43.                     "icon":"http://lixin.free.idcfengye.com/images/oneu.png"}, 
  44.                    {"text":"分類","selectIcon":"http://lixin.free.idcfengye.com/images/cs.png"
  45.                     "icon":"http://lixin.free.idcfengye.com/images/cu.png"}, 
  46.                    {"text":"閱讀","selectIcon":"http://lixin.free.idcfengye.com/images/rs.png"
  47.                     "icon":"http://lixin.free.idcfengye.com/images/ru.png"}, 
  48.                    {"text":"我的","selectIcon":"http://lixin.free.idcfengye.com/images/mys.png"
  49.                     "icon":"http://lixin.free.idcfengye.com/images/myu.png"}] 
  50.  
  51.  
  52.         return  jsonify(menudatas) 
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59. if  __name__=="__main__"
  60.     app.run(debug=True,port=8500) 

 3.鴻蒙的遠程請求python flask服務,需要使用內網穿透工具


4.同時啟動nginx服務和ngrok的內網穿透



5.鴻蒙的業務邏輯層通過配置網絡權限和域名安全審核


5.鴻蒙js的業務邏輯層代碼

  1. import fetch from '@system.fetch'
  2. import prompt from '@system.prompt'
  3. export default { 
  4.     data: { 
  5.         title: 'World'
  6.         currentIndex:0, 
  7.         menudatas:[] 
  8.     }, 
  9.     onInit(){ 
  10.  
  11.  
  12.  
  13.         fetch.fetch({ 
  14.            url:"http://aeawqk.natappfree.cc/loadmenu"
  15.             method:"GET"
  16.             responseType:"json"
  17.             success:(resp)=> 
  18.             { 
  19.                 this.menudatas=JSON.parse(resp.data); 
  20.  
  21.  
  22.             } 
  23.  
  24.  
  25.         }); 
  26.     }, 
  27.     onShow(){ 
  28.         prompt.showToast({ 
  29.             message:"正在加載數據,請稍后"
  30.             duration:5000 
  31.  
  32.         }); 
  33.     }, 
  34.     changeview(e) 
  35.     { 
  36.         let  cIndex=e.index
  37.  
  38.         this.currentIndex=cIndex; 
  39.  
  40.  
  41.     } 

 6.視圖層代碼

  1. <div class="container"
  2.     <tabs  class="tabs" index="{{currentIndex}}"  onchange="changeview" vertical="false" > 
  3.         <tab-bar class="tab-bar"  mode="fixed"
  4.             <block  for="{{menudatas}}"
  5.                 <div  class="menuview"
  6.                     <image  class="cimg"  src="{{currentIndex==$idx?$item.selectIcon:$item.icon}}"></image> 
  7.                     <text  class="{{currentIndex==$idx?'stxt':'dtxt'}}">{{$item.text}}</text> 
  8.                 </div> 
  9.             </block> 
  10.         </tab-bar> 
  11.  
  12.         <tab-content class="tab-content"
  13.             <div  class="oneview"
  14.  
  15.             </div> 
  16.             <div  class="twoview"
  17.  
  18.             </div> 
  19.             <div  class="threeview"
  20.  
  21.             </div> 
  22.             <div  class="fourview"
  23.  
  24.             </div> 
  25.  
  26.         </tab-content> 
  27.  
  28.     </tabs> 
  29. </div> 

7.樣式代碼

  1. .container { 
  2.     display: flex; 
  3.     flex-direction: column
  4.     width: 100%; 
  5. .tabs{ 
  6.     width: 100%; 
  7. .tab-bar{ 
  8.     width: 100%; 
  9.     height: 12%; 
  10.     border-top: 10px  solid  silver; 
  11.     position: fixed; 
  12.     left: 0px; 
  13.     bottom: 0px; 
  14.     z-index:999; 
  15.     background-color: snow; 
  16.  
  17. .menuview{ 
  18.     width: 100%; 
  19.     height: 100%; 
  20. /**border: 5px  solid  black;**/ 
  21.     display: flex; 
  22.     flex-direction: column
  23.     align-items: center; 
  24.     padding: 15px; 
  25. .cimg{ 
  26.     width: 70px; 
  27.     height: 70px; 
  28. .tab-content{ 
  29.     width: 100%; 
  30.  
  31. .oneview{ 
  32.     width: 100%; 
  33.     height: 100%; 
  34.     background-color: palegreen; 
  35. .twoview{ 
  36.     width: 100%; 
  37.     height: 100%; 
  38.     background-color: palegoldenrod; 
  39. .threeview{ 
  40.     width: 100%; 
  41.     height: 100%; 
  42.     background-color: papayawhip; 
  43. .fourview{ 
  44.     width: 100%; 
  45.     height: 100%; 
  46.     background-color: powderblue; 
  47. .stxt{ 
  48.     color: black; 
  49. .dtxt{ 
  50.     color: silver; 

 8.底部菜單欄通過三元運算符,進行切換,效果如下:

 

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com/#zz

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2021-03-09 09:35:09

鴻蒙HarmonyOS應用開發

2021-03-02 14:34:48

鴻蒙HarmonyOS應用開發

2021-02-26 14:13:48

鴻蒙HarmonyOS應用開發

2021-02-20 12:34:53

鴻蒙HarmonyOS應用開發

2017-07-17 15:50:17

微服務Docker架構

2009-06-01 19:40:37

云計算 tivoli

2021-04-23 16:08:08

鴻蒙HarmonyOS應用

2024-05-09 09:01:03

2018-01-31 15:45:07

前端Vue.js組件

2015-04-14 11:10:22

PaaSCloudFoundrBuildpack

2018-08-22 18:16:47

2011-06-28 10:42:38

Windows 8開發部門DevX

2013-06-08 15:04:24

醫療信息化華為

2020-09-01 13:10:42

JavaScript開發 技巧

2019-11-22 23:34:26

iOS 13蘋果iOS系統

2022-07-03 06:58:46

deno開發nodejs

2021-01-22 17:23:32

鴻蒙HarmonyOS應用

2013-12-05 14:39:36

TechEd2013DevOps微軟

2024-02-23 08:57:42

Python設計模式編程語言

2022-08-22 07:26:32

Node.js微服務架構
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本福利视频免费观看 | 精品91av| 午夜精品 | 久久99蜜桃综合影院免费观看 | 久久婷婷av | 日韩有码在线观看 | 99精品欧美 | 日本一区二区影视 | 黑人久久 | av网站在线播放 | 国产一级一片免费播放 | 久久久性| 狠狠爱免费视频 | 中文字幕免费在线观看 | 亚洲成人福利在线观看 | 欧美一级免费 | 狠狠色综合欧美激情 | 久久久久久一区 | av中文在线| 人人做人人澡人人爽欧美 | 午夜精品久久久久99蜜 | 中文字幕一区二区在线观看 | 国产精品一区二区三区在线 | 草久久| 精品视频一区二区在线观看 | 成人一区二区三区在线观看 | 久久久激情视频 | 华丽的挑战在线观看 | 一区二区三区欧美 | 亚洲一区二区三区免费视频 | 欧美二级 | 午夜亚洲 | 久久激情视频 | 国产成人免费视频网站视频社区 | 久久久91精品国产一区二区精品 | 亚洲免费人成在线视频观看 | 91热爆在线观看 | 久久亚洲一区 | 国产一级在线 | 久久国产精品亚洲 | 亚洲一区二区三区免费视频 |