关于ionic的一些坑(2)
如果你通过查阅相关文档,ionic的项目框架已经搭好,下面我来总结一下我在项目中所遇到的坑,给还没踩过的人以方便,给自己以勉励:
(1)关于android和ios的适配
因为ionic默认的tabs状态是位于每个页面的二级标题处,并没有位于底部,不过有相关的配置可以设置:
$ionicConfigProvider.scrolling.jsScrolling(true);
$ionicConfigProvider.platform.ios.tabs.style('standard');
$ionicConfigProvider.platform.ios.tabs.position('bottom');
$ionicConfigProvider.platform.android.tabs.style('standard');
$ionicConfigProvider.platform.android.tabs.position('standard');
$ionicConfigProvider.platform.ios.navBar.alignTitle('center');
$ionicConfigProvider.platform.android.navBar.alignTitle('bottom');//默认为left
$ionicConfigProvider.platform.ios.views.transition('ios');
$ionicConfigProvider.platform.android.views.transition('android');
$ionicConfigProvider.views.swipeBackEnabled(false);
(2)关于ionic路由配置的cache以及刷新问题
在路由里面配置cache缓存,一定要慎用,有时候你跳转到新页面的时候,数据并没有刷新,此时采用跳转后{reload:true},同时采用cache:false就可以实现数据刷新,但也由此会衍生出其他稀奇古怪的问题,所以建议还是不要用此方法刷新,最好的办法是采用
$scope.$on("$stateChangeSuccess",function(){
//你的数据展现
})
来实现数据刷新
(3)关于返回上一级或者多级的问题
关于返回的思路,
1、用路由状态返回
2、用ionic框架里边自带的标签属性返回
但是我在用的时候,突然发现这里返回是好的,但是在加入数据以后,就会出现返回错乱的问题,并没有返回到我想指定的地方,此时我通过查阅得到可以再配置中添加依赖$ionicHistory,然后采用浏览历史查看的返回方式进行,$ionicHistory.goBack();采用此方法可在$ionicHistory.goBack()中添加参数,例如$ionicHistory.goBack(-2);就返回上上层页面,不过切忌不能写成$ionicHistory.goBack(“-2”);的形式,会报错的
(4)关于$location.path() 的使用
此种用法也可用于跳转到指定页面,但是一般的跳转都是采用路由“tab.myindex”此种写法,但是一旦用了$location.path(),就需要写为
$location.path() == '/tab/myindex'此种形式,否则没有任何效果,同时记得添加依赖$location
(5)关于弹出框的一些问题
本来根据官方文档API,弹出框是没有任何问题的,关键是根据客户需求在弹窗口上面改造,例如
var OpenPhoto="<img style='height:50%; width:100%;' src='"+pageFilepath+"'/>"
var confirmPopup = $ionicPopup.confirm({
title: '解密图片预览',
template: OpenPhoto,
buttons: [
{
text: '取消',
type: 'button-positive button-outline'
},
{ text: '确定',
type: 'button-positive button-outline',
},
]
});
在confirmPopup 方法中的template模板里面,官方文档里面是只有一个标签来呈现这里面的内容,但是现在项目需求要对里面的样式进行改进,我在里面写class类给样式,直接给样式都不可以,没办法,只好在外面定义了一个变量存起来,然后放进去,这样才可以达到预期的效果
好了,今天先总结这几个,还有一些还没有整理好,待这你好之后再给大家分享,望咱中国的开源之路越走越广
关于ionic的一些坑(2)的更多相关文章
- 关于ionic的一些坑(1)
既然来了,总要留下点什么证明自己来过不是,今天就扒一扒自己在ionic上面遇到的坑,因为在项目中2还没出来,所以现在所遇到的都是1中的,关于2的,待老夫以后详细摸索之后在与君细细道来. 1.ionic ...
- 关于ionic的一些坑(3)
(1)对于页面中的input之类的输入框,取值的时候一般采用的是$scope.model=””的方式来取得input输入框的值,然后进行操作,但实际上在ionic里面是取不到的,取值之前必须先把inp ...
- ionic新入坑-环境搭建+新建项目+打开低版本项目处理
是的.我又双叒叕入新坑了.想我大学的时候web-app刚火起来.还帮忙做了我们学校医务室系统的web-app页面部分呢.时间太紧最后也没出个完整的版本.那时候只是用H5简单做了web部分.是想着用ph ...
- ionic+cordova填坑
1.命令行更新 cordova,ionic.nodejs ,npm,bower等到新版本,不要在vs中更新 2.程序突然白屏 因为拷贝其他程序到js中,乱码 :a模拟器打开 f12看控制台错误解决 3 ...
- Ionic3项目实践记录
Ionic3首次项目实践记录 标签(空格分隔): Angular Ionic Ionic3踩坑 1. 路由懒加载(lazy load) 如果设置了懒加载,就必须全部懒加载(包括TabsPage),否则 ...
- ionic 微信分享值各种坑
去前段时间公司的app需要做微信分享,然后网上找的教程,在做的时候发现网上的教程各种坑,现在将做得过程分享出来 在做功能之前你需要做几步预备工作, 1.安装jdk,jre,并加入全局变量[这个网上还是 ...
- ionic开发遇到的坑及总结
前言 ionic是一个用来开发混合手机应用的,开源的,免费的代码库.可以优化html.css和js的性能,构建高效的应用程序,而且还可以用于构建Sass和AngularJS的优化.ionic会是一个可 ...
- 关于ionic开发中遇到的坑与总结
这次是第二次使用ionic开发混合app,今天算是对这个框架做一个总结,基础的我就不再重复了,网上都有教程.我就说说自己的心得和遇见的各种坑, 之后会陆续补充,想到什么说什么吧. 1.关于ionic效 ...
- ionic中遇到的一些问题和坑
接触ionic有一段时间了,一路上踩了不少坑.大部分都记录下来了,分享给大家,可以少走很多弯路 1,ng-init不能在body里面初始化,可以在一个段落里面初始化<div ng-init> ...
随机推荐
- ios8中百度推送接收不到
ios8中百度推送接收类型会有所改变: //消息推送注冊 if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0) { ...
- 广播接收者 BroadcastReceiver 示例-1
广播机制概述 Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广播接收者.广播作为Android组件间的通信方式,可以使用的场景如下: 1 ...
- .NET基础拾遗(7)多线程开发基础4
一.多线程编程中的线程同步 1.C#中的lock关键字 lock关键字可能是我们在遇到线程同步的需求时最常用的方式,但lock只是一个语法糖,为什么这么说呢,下面慢慢道来. (1)lock的等效代码其 ...
- DataGrid( 数据表格) 组件[3]
本节课重点了解 EasyUI 中 DataGrid(数据表格)组件的使用方法,这个组件依赖于Panel(面板).Resizeable(调整大小).LinkButton(按钮).Pageination( ...
- 在C#、Java中,为什么不能用[返回值]区别重载方法?
为什么方法签名只包含方法名和参数列表,而没有把返回值考虑进去? 如下有两个方法: void Func(){} string Func() { return string.Empty; } 编辑器可以根 ...
- 32位PLSQL_Developer连接oracle11g_64位
1. 请将你下载的instantclient-basic-win32-10.2.0.5 文件解压.然后复制到你的数据库安装的文件夹下的producti文件夹下,我的是: E:\app\Administ ...
- xcode下载方式
1.去AppStore下载 对于Xcode老是在AppStore升级失败,而且下载慢,可取找到了这个--> 官方 Xcode .dmg 文件下载链接:超级传送门 2.开发者中心官网下载 可参考这 ...
- angularjs使用ng-messages-include实例
<!DOCTYPE html> <html lang="zh-CN" ng-app="app"> <head> <me ...
- ARP协议的报文格式 转自n哖苡逅
ARP协议的报文格式 结构ether_header定义了以太网帧首部:结构arphdr定义了其后的5个字段,其信息用于在任何类型的介质上传送ARP请求和回答:ether_arp结构除了包含arphdr ...
- sass转换为css
sass安装的方法参考官网:http://www.w3cplus.com/sassguide/ SASS文件转换为CSS文件的方法: 首先输出 F: 代表找到F盘 : 然后输出cd sass 代表找到 ...