webAPP踩坑记录
最近公司突然给我们下了一个任务 一个星期要做出一个系统网站 外加手机app 2个同事负责 web开发 我负责手机app 的开发
今天终于初级版本做完了,记录一下手机app踩过的坑与优化之路
用到技术 mui+vue.js+webApi
首先是侧滑菜单栏 类似于qq侧滑
1 <!-- 主界面不动、菜单移动 -->
2 <!-- 侧滑导航根容器 -->
3 <div class="mui-off-canvas-wrap mui-draggable mui-slide-in">
4 <!-- 菜单容器 -->
5 <aside class="mui-off-canvas-left" id="offCanvasSide">
6 <div class="mui-scroll-wrapper">
7 <div class="mui-scroll">
8 <!-- 菜单具体展示内容 -->
9
10 </div>
11 </div>
12 </aside>
13 <!-- 主页面容器 -->
14 <div class="mui-inner-wrap">
15 <!-- 主页面标题 -->
16 <header class="mui-bar mui-bar-nav">
17 <a class="mui-icon mui-action-menu mui-icon-bars mui-pull-left" href="#offCanvasSide"></a>
18 <h1 class="mui-title">标题</h1>
19 </header>
20 <nav class="mui-bar mui-bar-tab">
21 <a class="mui-tab-item mui-active">
22 <span class="mui-icon mui-icon-home"></span>
23 <span class="mui-tab-label">首页</span>
24 </a>
25 <a class="mui-tab-item">
26 <span class="mui-icon mui-icon-phone"></span>
27 <span class="mui-tab-label">电话</span>
28 </a>
29 <a class="mui-tab-item">
30 <span class="mui-icon mui-icon-email"></span>
31 <span class="mui-tab-label">邮件</span>
32 </a>
33 <a class="mui-tab-item">
34 <span class="mui-icon mui-icon-gear"></span>
35 <span class="mui-tab-label">设置</span>
36 </a>
37 </nav>
38 <div class="mui-content mui-scroll-wrapper">
39 <div class="mui-scroll">
40 <!-- 主界面具体展示内容 -->
41
42 </div>
43 </div>
44 <div class="mui-off-canvas-backdrop"></div>
45 </div>
46 </div>
第二个底部菜单 webview模式

<!--描述:底部导航-->
<nav class="mui-bar mui-bar-tab">
<template v-for="(tab,index) in navTabs">
<a class="mui-tab-item" :class="index==tabIndex?'mui-active':''" @tap="showView(index,tab)">
<span class="mui-icon " :class="index==tabIndex?tab.iconActive:tab.icon"></span>
<span class="mui-tab-label">{{tab.name}}</span>
</a>
</template>
</nav>
//选项卡页面对象
var barItemArray = [{
id: 'material',
name: '材料',
url: '../../water/material/index.html',
tips: 0,
icon: 'icon-cailiao',
iconActive:'icon-cailiaoActive'
},
{
id: 'parts',
name: '部件',
url: '../../water/parts/index.html',
tips: 0,
icon: 'icon-bujian',
iconActive:'icon-bujianActive'
},
{
id: 'production',
name: '生产作业',
url: '../../water/production/index.html',
tips: 0,
icon: 'icon-zuoye',
iconActive:'icon-zuoyeActive'
},
{
id: 'inspection',
name: '检验',
url: '../../water/inspection/index.html',
tips: 0,
icon: 'icon-jianyan',
iconActive:'icon-jianyanActive'
}
];
_selfView = plus.webview.currentWebview()
/*设置导航条的高度*/
var style1 = {
popGesture: 'none',
top: 20,
bottom: 0
};
var params = {
projectId: _selfView.projectId,
projTypeId: _selfView.projTypeId,
} _selfView.setStyle(style1);
for(var i in barItemArray) {
var sub = null;
var bar = barItemArray[i];
if(mui.os.ios) { //兼容ios
//创建新的webview页面
sub = plus.webview.create(barItemArray[i].url,
barItemArray[i].id,
style1,
params);
} else if(mui.os.android) {//兼容android
//创建新的webview页面
sub = plus.webview.create(barItemArray[i].url,
barItemArray[i].id, {
top: '44px',
bottom: '65px',
bounce: 'vertical',
},
params);
plus.webview.hide(barItemArray[i].id);
}
if(sub) {
_selfView.append(sub);
} }
//默认显示第一个页面
plus.webview.show(barItemArray[0].id);
下拉刷新 ios 和android 也有差异
if(mui.os.android) { //如果是安卓 下拉刷新
_selfView.setPullToRefresh({
support: true,
height: '50px',
range: '100px',
style: 'circle',
offset: '1px'
}, loadDownData);
}
if(mui.os.android) { //如果是安卓
//结束刷新
_selfView.endPullToRefresh();
}
webAPP踩坑记录的更多相关文章
- unionId突然不能获取的踩坑记录
昨天(2016-2-2日),突然发现系统的一个微信接口使用不了了.后来经查发现,是在网页授权获取用户基本信息的时候,unionid获取失败导致的. 在网页授权获取用户基本信息的介绍中(http://m ...
- webapp填坑记录[更新中]
网上也有许多的 webapp 填坑记录了,这几个月,我在公司正好也做了2个,碰到了一些问题,所以我在这里记录一下我所碰到的问题: meta 头部声明在开发的时候,刚刚创建 HTML 文件,再使用浏览器 ...
- CentOS7.4安装MySQL踩坑记录
CentOS7.4安装MySQL踩坑记录 time: 2018.3.19 CentOS7.4安装MySQL时网上的文档虽然多但是不靠谱的也多, 可能因为版本与时间的问题, 所以记录下自己踩坑的过程, ...
- ubuntu 下安装docker 踩坑记录
ubuntu 下安装docker 踩坑记录 # Setp : 移除旧版本Docker sudo apt-get remove docker docker-engine docker.io # Step ...
- SpringBoot + Shiro + shiro.ini 的踩坑记录
0.写在前面的话 好久没写博客了,诶,好多时候偷懒直接就抓网上的资料丢笔记里了,也就没有自己提炼,偷懒偷懒.然后最近参加了一个网络课程,要交作业的那种,为了能方便看下其他同学的作业,就写了个爬虫把作业 ...
- 你真的了解字典(Dictionary)吗? C# Memory Cache 踩坑记录 .net 泛型 结构化CSS设计思维 WinForm POST上传与后台接收 高效实用的.NET开源项目 .net 笔试面试总结(3) .net 笔试面试总结(2) 依赖注入 C# RSA 加密 C#与Java AES 加密解密
你真的了解字典(Dictionary)吗? 从一道亲身经历的面试题说起 半年前,我参加我现在所在公司的面试,面试官给了一道题,说有一个Y形的链表,知道起始节点,找出交叉节点.为了便于描述,我把上面 ...
- google nmt 实验踩坑记录
最近因为要做一个title压缩的任务,所以调研了一些text summary的方法. text summary 一般分为抽取式和生成式两种.前者一般是从原始的文本中抽取出重要的word o ...
- ABP框架踩坑记录
ABP框架踩坑记录 ASP.NET Boilerplate是一个专用于现代Web应用程序的通用应用程序框架. 它使用了你已经熟悉的工具,并根据它们实现最佳实践. 文章目录 使用MySQL 配置User ...
- SpringBoot+SpringSecurity+Thymeleaf认证失败返回错误信息踩坑记录
Spring boot +Spring Security + Thymeleaf认证失败返回错误信息踩坑记录 步入8102年,现在企业开发追求快速,Springboot以多种优秀特性引领潮流,在众多使 ...
随机推荐
- 按键(vb)启动指定目录的程序以及获取当前应用路径
Private Declare Function GetDesktopWindow Lib "user32" () As Long Private Declare Function ...
- Socket 的理解及实例
Socket 的理解及实例Socket 的理解TCP/IP要想理解socket首先得熟悉一下TCP/IP协议族, TCP/IP(Transmission Control Protocol/Intern ...
- 机器学习之Logistic 回归算法
1 Logistic 回归算法的原理 1.1 需要的数学基础 我在看机器学习实战时对其中的代码非常费解,说好的利用偏导数求最值怎么代码中没有体现啊,就一个简单的式子:θ= θ - α Σ [( hθ( ...
- (11.13)Java小知识!
今天想要与大家分享一下有关于构造方法的知识! 构造方法的定义与作用 构造方法是一种特殊类型的方法.当一个对象被创建的时候,构造方法用来初始化对象,也就是说构造方法其实是一个名词而不是动词,像我刚刚开始 ...
- JDK8 指南(译)
翻译自 java8-tutorial 新特性 Default Methods for Interfaces(接口的默认方法) Java 8 使我们能够通过使用 default 关键字将非抽象方法实现添 ...
- Java字符编码
今天在往oracle数据库里插入数据时发现,往一个20字节的字段里插入8个汉字加上一个括号,并没有提示字段超长.猜想数据库应该并没有用万国码(utf-8). 查询数据库编码sql:select * f ...
- C# 中操作API
作为初学者来说,在C#中使用API确是一件令人头疼的问题.在使用API之间你必须知道如何在C#中使用结构.类型转换.安全/不安全代码,可控/不可控代码等许多知识. 一切从简单开始,复杂的大家一时不能接 ...
- Java中swap()实现
Java中swap()实现 1.今天可爱的谭老师发了一道题目,使用java写方法交换Integer类型数据,而且入参固定了,题目请下图: 入参固定的话,当时想到的是重新定义一个自己的Integer类型 ...
- Linux 计划任务总结
今天项目用到了,Linux计划任务,从网上找了基本blog看了,总结了下. Linux 下的计划任务有atd和crond两种计划任务.atd服务使用的at命令只能执行一次,而crond服务使用的cro ...
- eclipse自定义代码模板
eclipse自定义代码模板 Eclipse 提供了非常多的代码模板,我们可以通过 Windows->Preferences->Java->Editor->Templates ...