MUI框架-01-介绍-准备-创建项目

(1)MUI 介绍

  • MUI 是什么,解决了什么问题?
  • MUI 官方号称最接近原生APP体验的高性能前端框架
  • 简单的说就是webapp的以个开发框架
  • webapp和原生app性能及体验的差距,一直是移动app开发者放弃HTML5的首要原因。 浏览器天生的切页白屏、不忍直视的转页动画、浮动元素的抖动、无法流畅下拉刷新等问题,这些都让HTML5开发者倍感挫败,尤其拿到Android低端机运行,摔手机的心都有(如果开发者需要解决这些问题,需要处理很多兼容性问题,需要花费大把的时间和精力);
  • 浏览器默认控件样式(prompt、alert)又少又丑,制作一个漂亮的控件非常麻烦,也有一些制作简单的ui框架但性能低下。
  • 此时,出现了正义的 MUI
  • mui框架:一个可以方便开发出高性能App的框架,也是目前最接近原生App效果的框架。有些控件就是原生态的效果,mui起到了桥梁的作用。
  • MUI是国产的,北京数字天堂。和它配套的有开发工具 HBuilder,5+runtime
    5+runtime:可以将H5打包成native app,原理:利用原生态的webview去承载HTML5

(2)MUI 的特点

  • 轻量
    追求性能体验,是我们开始启动MUI项目的首要目标,轻量必然是重要特征;
    MUI不依赖任何第三方JS库,压缩后的JS和CSS文件仅有100+K和60+K
    可以根据自个的需要,自定义去下载对应的模块。和我们接触的zepto.js类似
  • 原生UI
    鉴于之前的很多前端框架(特别是响应式布局的框架),UI控件看起来太像网页,没有原生感觉,因此追求原生UI感觉也是我们的重要目标
    MUI以iOS平台UI为基础,补充部分Android平台特有的UI控件;
  • 容易上手
  • 不需要其他框架基础:语法上和我们之前 学到用到 的写法是一样的。
  • 其他框架:ionic(Angular.js), react(native),vue(发音:view)
    vue、react、Angular.js是并列关系。
    前端是:vue和react的天下

(3)MUI 存在的问题

(1)名气不是很大,国产,不像react、Angular.js那样,世界范围都在使用。目前国内MUI使用的公司还是很多的
(2)框架本身存在一些bug还有一些待解决的问题
(3)总的来说,用着还是很不错了

(4)开发工具

  • HBuilder 下载地址:http://www.dcloud.io/
  • mui 有个开发文档预览式 app,下载Hello mui App
    点击下载 已打包好的Hello mui 手机app,直接在手机上体验mui的控件UI及能力展示

(5)创建 MUI 项目

  • 选择新建“移动APP”,并选择“Hello MUI”工程模板,创建工程;然后通过数据线将手机连接上电脑,点击运行,就可以在手机上体验MUI的各项能力
  • 快速构建页面:
  • 1.新建含mui的HTML文件
    • 在Hbuilder中,新建HTML文件,选择”含mui的HTML“模板,可以快速生成mui页面模板,该模板默认处理了mui的js、css资源引用
  • 2.输入mheader
    • 顶部标题栏是每个页面都必需的内容,在Hbuilder中输入mheader,可以快速生成顶部导航栏
  • 3.输入mbody
    • 除顶部导航、底部选项卡两个控件之外,其它控件都建议放在.mui-content控件内,在Hbuilder中输入mbody,可快速生成包含.mui-content的代码块
  • 4.更多开发后面介绍,今天先介绍一些注意事项
  • 5.官方文档:http://dev.dcloud.net.cn/mui/ui/

(6)简单页面

  • 创建项目
  • 打开 HBuilder 新建移动 app 项目,选择 mui 项目模板
  • 新建 html 文件,选择 mui 模板
  • 也可以选择下面预制的模板

(7)HTML 文件

  • 打开新建的 html 文件
  • 会看到一些预制的设置,meta 标签,css 文件,js 文件
  • 然后我们主要的是在 body 中进行一些操作
  • 先输入一个: m
  • 可以看到触发了关键词,有很多代码块,这也是最常用的方法,我们就可以快速的开发
  • 例1:
  • 比如我们输入: mh
  • 选中 header,然后回车
  • 输入标题:MUI 入门

  • 很快吧,用 mui 做这种的话就是这么快
  • 例2:
  • 比如我们输入: ml
  • 选中第 2 个图文列表,回车

  • 这时候就会有问题了,顶部重叠了,为什么会有这个问题呢,就是因为没有把内容放到主体里面,然后人家还以为你是 header 呢
  • 之所以这样,故意遇到这个问题,是因为:
  • 除了固定栏之外,其它内容都要包裹在.mui-content 中,否则就有可能被固定栏遮罩,原因:固定栏基于Fixed定位,不受流式布局限制,普通内容依然会从 top:0 的位置开始布局,这样就会被固定栏遮罩,像这样的注意事项还有挺多,我会单独整理一下
  • 解决办法:
  • 删掉刚才的列表,输入 mbo 找到 body 回车
  • 然后在 body 里面输入 ml 图文列表,预览:

  • 例3:
  • 然后我们在 主体的外面,就是 mui-content 的div的外面
  • 我们输入:mt 选择底部栏,回车

  • 这时候简单的搭建页面,是不是就已经可以掌握了
  • 这时候是不是已经感觉 mui 有时候还是很强大的
  • 好,后面我们在继续学习

关于开发

MUI框架-01-介绍-创建项目-简单页面的更多相关文章

  1. django框架使用及创建项目

    一.django框架使用及创建项目 (1)创建Django项目 1>在cmd命令行下输入:django-admin startproject RecourceRegist(进入相应路径下) 2& ...

  2. MUI框架开发HTML5手机APP(二)--页面跳转传值&底部选项卡切换

      概 述 JRedu 在上一篇博客中,我们学习了如何使用Hbuilder创建一个APP,同时如何使用MUI搭建属于自己的第一款APP,没有学习的同学可以戳链接学习: http://www.cnblo ...

  3. 一个先进的App框架:使用Ionic创建一个简单的APP

    原文  http://www.w3cplus.com/mobile/building-simple-app-using-ionic-advanced-html5-mobile-app-framewor ...

  4. 用mui框架开发手机app项目实践中的那些事儿

    http://www.yilingsj.com/xwzj/2015-04-29/260.html 最近在玩mui框架,坑的我是:西湖的水,全都是眼泪!!! 公司的手机app要进行改版,我率先想到的是j ...

  5. python开发学习-day15(前端部分知识、web框架、Django创建项目)

    s12-20160430-day15 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...

  6. 搭建Spring + SpringMVC + Mybatis框架之一(创建项目)

    创建项目 用maven管理项目很方便,不用手动下载jar包,直接在pom.xml配置文件中,maven可以帮助我们自动下载,非常方便 新建一个web project,添加maven支持就可以了,这样创 ...

  7. 学习ASP.NET Core Razor 编程系列三——创建数据表及创建项目基本页面

    一.创建脚本工具并执行初始迁移 在本节中,您将使用包管理控制台(PMC)来更新数据库: •添加VisualStudio Web代码生成包.这个包是运行脚本引擎所必需的. • 执行Add-Migrati ...

  8. MUI框架-05-用MUI做一个简单App

    MUI框架-05-用MUI做一个简单App MUI 是一个前端框架,前端框架就像 Bootstrap,EasyUI,Vue ,为了做 app 呢,就有了更加高效的 MUI,我觉得前端框架有很多,也没有 ...

  9. MUI框架-06-静态页制作(图片轮播)

    MUI框架-06-静态页制作(图片轮播) 轮播也是静态,是相对页面交互来说 上一篇介绍了如何设计一个简单的界面,还没有接触过,请先查看: MUI框架-01-介绍-创建项目-简单页面 轮播组件 之前也介 ...

随机推荐

  1. Maven自动FTP远程部署

    参照官网文档: https://maven.apache.org/plugins/maven-deploy-plugin/examples/deploy-ftp.html 1.在pom.xml中加入: ...

  2. Java多线程笔记[未更新完]

    最近课上可摸鱼时间较多,因此并发开坑学习 本篇学习自Java多线程编程实战指南 目前进展:刚开坑,处于理解概念阶段 本篇学习自Java多线程编程实战指南 Q.进程和线程的区别 进程Process是程序 ...

  3. MySQL自定义排序

    存在表A 按名字倒序排 SELECT  *  FROM  A  ORDER  BY  name  DESC 结果如下: 若需要按照王五.张三.李四的顺序排序,使用自定义排序:FIELD() SELEC ...

  4. Mac 10.12安装WebStorm

    下载: (链接: https://pan.baidu.com/s/1c2o8wUG 密码: 2waz)

  5. SSM上传EXCLE到数据库 和 从数据库导出为EXCLE

    SSM上传EXCLE到数据库 和 从数据库导出为EXCLE package com.ABC.controller; import java.io.BufferedInputStream; import ...

  6. package-info类解读

    类不能带有public.private访问权限.package-info.java再怎么特殊,也是一个类文件,也会被编译成package-info.class,但是在package-info.java ...

  7. java代理-cglib

    前面说到了java的动态代理,但是动态代理依赖于接口,这次来看看cglib来实现的代理... 假设有如下方法,这回没有说接口哦~ package proxy.cglibProxy; public cl ...

  8. C语言读写配置文件--转载

    http://www.oschina.net/code/snippet_4873_2503 [].[代码] CException.h 跳至 [] [] [] /******************** ...

  9. rvm的安装, 使用rvm, 安装ruby, 以及gem的使用 (转)

    http://blog.163.com/digoal@126/blog/static/1638770402012425111617904/ rvm 全称Ruby Version Manager,  确 ...

  10. 把AspDotNetCoreMvc程序运行在Docker上-part1

    接<基于ASP.Net Core学习Docker技术第一步:在CentOS7安装Docker平台>这个博文,在搭建完成Docker平台之后,可以开始让aspdotnetcore程序运行在d ...