一.了解HBuilder

HBuilder内封装了大量的书籍,极大方便了使用

官方文档:

http://dev.dcloud.net.cn/mui/ui/

关于布局:

mhead  表头.mbody 身子,mtap 尾部

操作:

1.跳转页面 mui.openWindow

    document.getElementById("setting").addEventListener("tap",function(){ #  tap  监听事件    dga快捷方式mui.openWindow({   #mui.openWindow 跳转到新页面"url":"new.html",   #跳转的页面文件"id":"new.html",    #跳转的id
            styles:{top:"0px",     # styles 样式  固定时必须用top作为参照bottom:"50px"},extras:{              # extras 传值  需要在new.html上注入plusReady(function{}) ,内部填写  变量= plus.webview.currentWebview()接收.
                name:"666"}});});

2.点击显示提示 toast

    document.getElementById('email').addEventListener('tap',function () {mui.toast("你点击邮件了"); })

3.mui.fire 跨表发送数据

  mui.plusReady(function(){})document.getElementById('email').addEventListener('tap',function () {var new_page = plus.webview.getWebviewById("new.html"); #同过mui.fire传值的参数,指向id为要发送数据的html 的id,使用plus必须有 mui.plusReady(function()mui.fire(new_page,'show_alert',{name:"chunsheng"}); #mui.fire三个参数(访问页面id,function回调函数名,字典形式内容),需要在访问html接收这个回调函数})

另一端的接收

    document.addEventListener("show_alert",function(data){ #这里全局监听传递的回调函数console.log(JSON.stringify(data.detail.name));  #监听返回的函数必须 .detail 转换为Object字典形式alert("欢迎观临");})

4.json post请求

  document.getElementById('login_btn').addEventListener('tap',function () {var username = document.getElementById("username").value;   var password = document.getElementById("password").value; mui.post('http://192.168.13.144:9527/login',{username:username,password:password},function(data){mui.toast(data.msg);},'json');})mui.post('',#'' 存访问的地址
    {#传递的参数位置
       },function(data){#接收数据位置},'json'  #若为jsonity格式,可不告诉客户端请求头为json格式);

5.图文列表,自己创建列表格式 通过createElement("")创建标签和appendChild()定义层级关系

  function create_item(content){         var li = document.createElement("li");#创建标签li createElementli.className ="mui-table-view-cell mui-media"; #配置class信息  classNamevar a = document.createElement("a");var img = document.createElement("img");img.className ="mui-media-object mui-pull-left";img.src = "http://192.168.13.144:9527/get_image/"+content.image; #配置src 直接访问地址获取var div = document.createElement("div");div.className="mui-media-body";div.innerText = content.tilte; #创建文本  innerTextvar p = document.createElement("p");p.className="mui-ellipsis";p.innerText=content.text;li.appendChild(a); #创建层级关系
          a.appendChild(img);a.appendChild(div);div.appendChild(p);document.getElementById("content_list").appendChild(li);#注意,这是有名函数,需要调用才可用}

调用函数

    mui.plusReady(function () {mui.post('http://192.168.13.144:9527/content_list',{},function(data){for (var i = 0; i < data.length; i++) {
//                    console.log(JSON.stringify(data[i])) create_item(data[i]);#调用函数
                }},'json' );})

关于后端传递src

from flask import Flask,request,jsonify,send_file
from setting import MONGO_DB
@app.route("/content_list",methods=["POST"])
def content_list():res = list(MONGO_DB.content.find({},{"_id":0}))return jsonify(res)@app.route("/get_image/<filename>")
def get_image(filename):import ospath = os.path.join("tupian",filename)return send_file(path)

6.将其他页面在首页显示   mui.init( )     subpages

    mui.init({subpages:[{ #将main页面显示在首页的方法   subpagesurl:'main.html',id:'main.html',styles:{top:'0px',//mui标题栏默认高度为45px;bottom:'50px'//默认为0px,可不定义;}}]});

7.全局设置 mui.js

使用时一定要引用

<script src="js/mui.js" type="text/javascript" charset="utf-8"></script>

内容

window.serv = "http://192.168.13.189:9527";
window.serv_image = window.serv + "/get_image/";
window.serv_music = window.serv + "/get_music/";

在以后访问的路由中,都可以使用变量代替

8.将音频播放 myplayer

myplayer = plus.audio.createPlayer(window.serv_music + Sdata.audio);  #后面是访问文件的地址
        myplayer.play(); 播放
myplayer.pause();  #暂停myplayer.resume();  #继续
myplayer.stop();#停止

9.查看自身ip

//     var sdata = plus.webview.currentWebview(); # 在plusready ()使用
//     console.log(JSON.stringify(sdata)) #这里获取的是页面的全部信息

10websocket访问

    var ws = new WebSocket("ws://192.168.13.189:3721/app/app01");#这里同样可以通过websocket进行数据访问document.addEventListener("send_music",function(data){var send_str = data.detail // {to_user:"toy123",music:Sdata.audio}ws.send(JSON.stringify(send_str));}) 

转载于:https://www.cnblogs.com/zhangqing979797/p/10289790.html

HBuilder创建app 基础相关推荐

  1. hbuilder创建app并利用真机运行调试

    目前开发app有原生开发和web开发两种方式,各有各的优势和劣势,利用web技术开发app可以只用写一套代码,即可以在Android和ios同时应用,比较方便和快捷,有很多中不同的开发方式,例如cor ...

  2. Hbuilder创建app

    1.第一步当然先下载Hbuilder,创建移动app,创建时选择mui登录模板 2.项目建成功,直接运行Ctrl+R看看hello word效果.然而最难搞的还是真机调试,我用的小米,折腾了好久,提示 ...

  3. HBuilder创建App并打包发布

    如今,各式的代码编辑器层出不穷,一门语言的使用就会产生多个编辑器,就以前端而言,前端代码的编辑目前小编就熟悉了四款:Sublime.WebStorm.HBuilder.HBuilderX.曾经小编以为 ...

  4. Hbuilder创建app,夜神模拟器调试

    开发app时,需要用到一些模块,都需要在 document.addEventListener('plusready', function(){ }); 中执行,直接在浏览器是没法调试的,这时便需要用到 ...

  5. Django创建APP

    Django创建APP 原理基本和创建项目一样,紧接着上一篇创建项目的博客,采用的是在pycharm的Terminal中 步骤: 1.先输入 cd demo 进入到demo目录下 2.再输入 pyth ...

  6. 从零开始学习ThingJS之创建App对象

    1. 创建App 2. 加载场景 3. 加载地图 在数字孪生可视化行业,搭建模型以及3D场景都是让人头疼的事,但是有一个平台解决了这些难题,它就是ThingJS.作为面向物联网的3D可视化开发平台其特 ...

  7. HBuilder发行App(Android和ios)

    怎样将开发好的app测试和上架,此文包括Android和ios打包.测试和上架的大概过程.内容有些简陋,因为此过程踏坑无数,特此留念. 特此声明:内容不全仅供参考. 介绍两个参考网站: 1. http ...

  8. Glyphs App Essential Training Glyphs App基础教程 Lynda课程中文字幕

    Glyphs App Essential Training 中文字幕 Glyphs App基础教程 中文字幕Glyphs App Essential Training 每个设计师都有一个字体 Glyp ...

  9. iOS app可视化开发(一)使用Xcode创建app

    更多开发信息欢迎关注我的新浪微博:Jenny爱学习 自Apple. Inc推出swift语言之后,Xcode也更新了几个版本.目前新版的Xcode已经支持可视化的app开发,这意味着,在线生成app的 ...

最新文章

  1. ubuntu 好玩多了
  2. Android-----Activity生命周期
  3. 超越95%面试者的秘籍 part 1
  4. 中石油训练赛 - 手机号码(简单分块+思维)
  5. 什么是“ rpcsvchost”,以及为什么它在Mac上运行?
  6. jdbc odbc java mysql数据库连接_Java数据库连接之配置ODBC数据源
  7. 关于计算机的英语作文八百字,小学英语作文800字(精选10篇)
  8. python读取一个目录下的文件名(不会递归往下读)
  9. 发布Drools Workbench到Tomcat on Linux
  10. mysql行转列sql函数_(转)行变列SQL语句(MSSQL) - jack - 博客园
  11. Fiddler2 抓包工具,让你的信息无处可藏
  12. 魔兽世界服务端linux,LightsHope/vMangos – 基于Ubuntu服务器的WOW私服搭建教程
  13. php 固定表头,PHPExcel如何冻结(锁定)表头
  14. 专家看台:盛大架构师周爱民回顾职业历程,分享十项建议
  15. linux环境安装部署RF+Jenkins+Git(非完整版)
  16. 预告|2022 星策 Summit 企业数智化转型论坛议程公布!
  17. 用turtle画奥运五环
  18. 存储那些事儿(三):OpenStack的块存储Cinder与商业存储的融合
  19. 手动查杀病毒的第一课
  20. webgoat靶场通关记录

热门文章

  1. React:创建用于获取数据的自定义Hook
  2. Node.js 借助art-template进行后端渲染并呈现页面到前端
  3. mysql报错01427_ORA-01427问题的分析和解决
  4. 暂无支持此机型的手机版本_miui+app官方版-miui+安卓版 _5577安卓网
  5. adb 最大连接_工具集 | Android Studio—使用 WI-FI 进行 ADB 调试
  6. access后台链接mysql_Access为后台数据库的网站统计系统
  7. 简单而常用的shell 命令
  8. 联想战略储备看创投,联想创投All in智能互联网
  9. AI手机会怎么样?那不得看高通骁龙的AI能怎样
  10. DensePose开源了,2D变3D人体姿势实时识别 | Facebook@CVPR 2018