如果你通过查阅相关文档,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)的更多相关文章

  1. 关于ionic的一些坑(1)

    既然来了,总要留下点什么证明自己来过不是,今天就扒一扒自己在ionic上面遇到的坑,因为在项目中2还没出来,所以现在所遇到的都是1中的,关于2的,待老夫以后详细摸索之后在与君细细道来. 1.ionic ...

  2. 关于ionic的一些坑(3)

    (1)对于页面中的input之类的输入框,取值的时候一般采用的是$scope.model=””的方式来取得input输入框的值,然后进行操作,但实际上在ionic里面是取不到的,取值之前必须先把inp ...

  3. ionic新入坑-环境搭建+新建项目+打开低版本项目处理

    是的.我又双叒叕入新坑了.想我大学的时候web-app刚火起来.还帮忙做了我们学校医务室系统的web-app页面部分呢.时间太紧最后也没出个完整的版本.那时候只是用H5简单做了web部分.是想着用ph ...

  4. ionic+cordova填坑

    1.命令行更新 cordova,ionic.nodejs ,npm,bower等到新版本,不要在vs中更新 2.程序突然白屏 因为拷贝其他程序到js中,乱码 :a模拟器打开 f12看控制台错误解决 3 ...

  5. Ionic3项目实践记录

    Ionic3首次项目实践记录 标签(空格分隔): Angular Ionic Ionic3踩坑 1. 路由懒加载(lazy load) 如果设置了懒加载,就必须全部懒加载(包括TabsPage),否则 ...

  6. ionic 微信分享值各种坑

    去前段时间公司的app需要做微信分享,然后网上找的教程,在做的时候发现网上的教程各种坑,现在将做得过程分享出来 在做功能之前你需要做几步预备工作, 1.安装jdk,jre,并加入全局变量[这个网上还是 ...

  7. ionic开发遇到的坑及总结

    前言 ionic是一个用来开发混合手机应用的,开源的,免费的代码库.可以优化html.css和js的性能,构建高效的应用程序,而且还可以用于构建Sass和AngularJS的优化.ionic会是一个可 ...

  8. 关于ionic开发中遇到的坑与总结

    这次是第二次使用ionic开发混合app,今天算是对这个框架做一个总结,基础的我就不再重复了,网上都有教程.我就说说自己的心得和遇见的各种坑, 之后会陆续补充,想到什么说什么吧. 1.关于ionic效 ...

  9. ionic中遇到的一些问题和坑

    接触ionic有一段时间了,一路上踩了不少坑.大部分都记录下来了,分享给大家,可以少走很多弯路 1,ng-init不能在body里面初始化,可以在一个段落里面初始化<div ng-init> ...

随机推荐

  1. iOS蓝牙4.0协议简单介绍

    iOS开发蓝牙4.0的框架是CoreBluetooth,本文主要介绍CoreBluetooth的使用,关于本文中的代码片段大多来自github上的一个demo,地址是myz1104/Bluetooth ...

  2. Win2 Socket(套接字)相关 API

    Socket(套接字) 作者信息 肖进 单位:南京中萃食品有限公司 资讯部 邮箱:xiaoj@njb.swirebev.com 电话:025-58642091 与socket有关的一些函数介绍 1.读 ...

  3. RedHat下GCC及G++的安装

    GCC的安装: 切换到安装光盘目录下: #mount /dev/cdrom    /mnt/cdrom #cd /mnt/cdrom 安装GCC依赖的*rpm程序,必须按照顺序依次执行: #rpm - ...

  4. 网页JavaScript

    用法. JavaScript一般用于 head , body , </html> 之后. 格式<script language="javascript"> ...

  5. rhel6.4 using centos source

    rhel 默认的 yum 依赖于 rhn,要注册收费才能 update,改用 centos 的源: rpm -e yum* --nodeps rpm -qa | grep yum | xargs rp ...

  6. HQL查询

    HQL ,Hibernate Query Language ,是Hibernate查询语言,不直接操作数据表,而是操作实体类,根据实体类和对应数据表中的映射关系,查找数据. 下面是hql的基本步骤: ...

  7. javascript 冒泡和事件源 形成的事件委托

    冒泡:即使通过子级元素的事件来触发父级的事件,通过阻止冒泡可以防止冒泡发生. 事件源:首先这个东西是有兼容行问题的,当然解决也很简单. 两者结合使用,形成的事件委托有两个优势: 1.减少性能消耗: 2 ...

  8. ActiveReport 9手把手搭建环境及实战

    本文借鉴葡萄城空间产品,纯属分享,无任何营利目的 下载ActiveReports 9 专业版 打开下面的网站,点击立即下载,请您填写真实电子邮件地址,以获取ActiveReports产品试用版---系 ...

  9. 【转】使用 Eclipse 调试 Java 程序的 10 个技巧

    你应该看过一些如<关于调试的N件事>这类很流行的帖子 .假设我每天花费1小时在调试我的应用程序上的话,那累积起来的话也是很大量的时间.由于这个原因,用这些时间来重视并了解所有使我们调试更方 ...

  10. 腾讯RTX登录提示失败问题及处理办法

    出现问题时图片: 解决步骤: 首先ping一下RTX管理器所在的的ip地址 telnet一下服务器的端口 8000,8010 是否能通. 具体操作: 在无法登陆的客户端电脑上开始-运行-输入cmd 确 ...