Ionic APP-Web SPA开发进阶(一)AngularJS全栈工程狮进阶
AngularJS全栈工程狮进阶
前言
学习了一段时间AngularJS,开始接触移动端APP开发。为了响应公司开发需求,采用“Hybrid”混血开发方法。采用Ionic前端框架,对于小白来说,得一点一点的前进。
Ionic和AngularJS的完美融合,可以说是AngularJS的移动端解决方案(正如蒸蒸日上的React Native 是React的移动端解决方案一样。只不过为Facebook所属),它的核心架构也是为开发专业应用创建的。
读了一部分双狼写的书,了解到“开发原生应用的好处在于用户体验好,缺点在于开发周期长、投入大。随着技术的改进,一条捷径应运而生。在移动开发领域,Hybrid架构正风靡一时。作为原生应用与Web应用的混血儿,简单点说就是利用原生代码做个壳,内部其实是个Web应用。所谓‘壳’,其实就是一个浏览器内核,它负责加载页面,并且通过一个统一的接口,将一些手机操作系统中的功能导出给Web应用,使Web应用也能实现原生应用的功能。这种方式的最大优点就是实现跨平台,无论是Android、IOS还是手机浏览器,都可以使用同一套页面、同一套JS和CSS。对于公司,采用Hybrid架构意味着人才的专业化、人力成本的降低、开发周期的缩短。对于个人,采用Hybrid架构意味着技能的复用、职业空间的扩展。从原理上讲,Hybrid架构无法赶上原生应用的效果,所以必须在效果、开发周期、人力成本之间做出权衡。随着硬件性能越来越高,对于大多数应用来说,Hybrid已然足够。以微信为例,主体功能通讯为原生,而开放给第三方的接口例如公众号API,则为Web应用。更不必说各种网站的客户端了,几乎均为Hybrid。”
个人推崇项目驱动学习方法,先上个问题:切换页面时,如何回到之前页面的顶部?如下图左所示,现实是残酷的,实际的情形如下图右所示。
自己想到了三种方法:
1.页面刷新
页面刷新语句如下:$state.go("tab.bill_check", {}, { reload: true });
2.js语句实现回到页面顶部。
回到页面顶部:<a href="javascript:scrollTo(0,0);">返回顶部</a>
3.由于页面上移是由于软键盘弹出造成的,软键盘消失后页面并未恢复原来形态。
有时实践是最好的老师,进过测试,第一种想法毙掉。第二种想法毙掉。继续尝试第三种想法。
首先需要实现当软键盘归位后页面能够回归正常。那就需要实现监听软键盘按键了。
实践表明Ionic无法做到监听软键盘消失按钮,其它按钮均可以监听到,为什么呢?也无法判断软键盘消失。至此问题搁置于此....
学习一隅
美文美图
Ionic APP-Web SPA开发进阶(一)AngularJS全栈工程狮进阶的更多相关文章
- 4.2 万 Star!开发 Web 和移动端应用的全栈平台
[导语]:Meteor 是一个用 JS 开发现代 Web 应用程序的平台.它是开源的,在 GitHub 上有 4.2 万 Star. Meteor 是什么? 官方文档是这样描述 Meteor 的:Me ...
- python 全栈开发,Day43(python全栈11期月考题)
python全栈11期月考题 1.常用字符串格式化有哪些?并说明他们的区别 2.请手写一个单例模式(面试题) 3.利用 python 打印前一天的本地时间,格式为‘2018-01-30’(面试题) 4 ...
- vue开发东京买菜,全栈项目,前端django,带手机GPS精准定位,带发票系统,带快递系统,带微信/支付宝/花呗/银行卡支付/带手机号一键登陆,等等
因为博客园不能发视频,所以,完整的视频,开发文档,源码,请向博主索取 完整视频+开发文档+源码,duanshuiLu.com下载 vue+django手机购物商城APP,带支付,带GPS精准定位用户, ...
- django开发东京买菜,全栈项目,前端vue,带手机GPS精准定位,带发票系统,带快递系统,带微信/支付宝/花呗/银行卡支付/带手机号一键登陆,等等
因为博客园不能发视频,所以,完整的视频,开发文档,源码,请向博主索取 完整视频+开发文档+源码,duanshuiLu.com下载 vue+django手机购物商城APP,带支付,带GPS精准定位用户, ...
- 第六模块:WEB框架开发 第1章·Django框架开发1~50
01-Django基础介绍 02-Web应用程序1 03-Web应用程序2 04-http请求协议1 05-http请求协议2 06-http协议之响应协议 07-wsgire模块1 08-wsgir ...
- 老男孩python3.5全栈开发第9期+课件笔记(1-15部全 共125天完整无加密)
点击了解更多Python课程>>> 老男孩python3.5全栈开发第9期+课件笔记(1-15部全 共125天完整无加密)大小:236G 此课程为老男孩全栈开发最新完结课程,适合零基 ...
- python全栈开发学习_内容目录及链接
python全栈开发学习_day1_计算机五大组成部分及操作系统 python全栈开发学习_day2_语言种类及变量 python全栈开发_day3_数据类型,输入输出及运算符 python全栈开发_ ...
- MySQL进阶(视图)---py全栈
目录 mysql进阶(视图)---py全栈 一.什么是视图? 二.视图的特性 三.视图的优点 四.使用场合 五.视图基本操作 六.案例 mysql进阶(视图)---py全栈 一.什么是视图? 视图是从 ...
- 实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目
系列文章 实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求 实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目 实战使 ...
随机推荐
- Dockerfile的指令
指令的一般格式为 INSTRUCTION arguments,指令包括 FROM.MAINTAINER.RUN 等. FROM 格式为 FROM <image>或FROM <imag ...
- OpenCV 2.x/3.x 随机初始化矩阵
简介 在测试算法的时候,或者某些算法需要使用随机数,本文介绍如何使用OpenCV的随机数相关功能. 主要内容: 1. cv::RNG类 -- random number generator 2. cv ...
- ejabberd编译更新脚本
ejabberd编译更新脚本 (金庆的专栏 2016.8) 用rebar编译ejabberd源码,然后复制编译所得beam文件到ejabberd安装目录, 调用ejabberdctl热更新. call ...
- 【BAT经典算法面试题系列】求和为n的连续正整数
马上就要到9月份了,意味着一年一度的秋招就要开始了,相信不论是正在实习的童鞋还是马上就要找工作的童鞋,BAT无疑是国内的"明星企业",是每个学计算机的小伙伴们心之向往的企业,但是呢 ...
- Apache shiro集群实现 (四)shiro授权(Authentication)--访问控制
Apache shiro集群实现 (一) shiro入门介绍 Apache shiro集群实现 (二) shiro 的INI配置 Apache shiro集群实现 (三)shiro身份认证(Shiro ...
- ssh用法及命令
http://blog.csdn.net/pipisorry/article/details/52269785 什么是SSH? 简单说,SSH是一种网络协议,用于计算机之间的加密登录.如果一个用户从本 ...
- springmvc注解形式的开发参数接收
springmvc基于注解的开发 注解第一个例子 1. 创建web项目 springmvc-2 2. 在springmvc的配置文件中指定注解驱动,配置扫描器 <!-- sprimgmvc 注解 ...
- Android4.3 屏蔽HOME按键返回桌面详解(源码环境下)
点击打开链接 首先声明我是做系统开发的(高通平台),所以下面介绍的方法并不适合应用开发者. 最经有个需求要屏蔽HOME按键返回桌面并且实现自己的功能,发现以前的方式报错用不了,上网搜索了一下,发现都是 ...
- iOS下JS与OC互相调用(四)--JavaScriptCore
前面讲完拦截URL的方式实现JS与OC互相调用,终于到JavaScriptCore了.它是从iOS7开始加入的,用 Objective-C 把 WebKit 的 JavaScript 引擎封装了一下, ...
- 如何将Ubuntu部署到U盘中,用U盘安装linux操作系统
http://jingyan.baidu.com/article/d5c4b52be79960da560dc59f.html 用U盘装一个linux系统是非常简单的事情,不会就看看这篇文章吧,后期我会 ...