使用ionic2开发的一些问题及对策
来源:互联网 发布:zol软件论坛 编辑:程序博客网 时间:2024/05/16 17:32
这边记录一下ionic2开始遇到的一些问题
1.闭包函数及页面赋值的处理方法
ionic2推荐使用的是argularjs2中的promise,then的处理方法,最好的情况是把自己的异步方法全部写成这种形式,使用这种方法可以轻易的使用this.属性对页面的属性进行赋值,然后通过arjularjs的双向绑定在页面展示。然而不熟悉这种写法如果直接使用js异步方法或者函数中含有其它闭包函数调用会导致this.属性取不到页面的属性,对策是在主方法调用的时候写一句var that=this;到js的其它异步回调方法中使用that.属性进行操作。
2.页面刷新的处理
通过ionic2新建的页面文件,只含有ionDidView()方法,这其中的方法只在页面第一次加载的时候执行,如果页面使用push操作到子页面退回,那么母页面的这里面的方法就不会再执行。ionViewWillEnter()是每次到这个页面都会执行的方法,不论是push还是pop操作都会出发这个方法。ionViewDidLeave()是每次离开这个页面都会执行的方法。
3.使用ionic loading组件
一般需求是请求后台前调用loading方法,请求成功后dismiss loading,然而在加入dismissOnPageChange: true这个参数之后,若是执行页面的跳转操作(setRoot,push),会报Uncaught promise error,
需要将回掉方法现在loading的回掉函数中,或者是弹出一个alert窗口写在alert的回调函数中。
4.使不使用jquery
只要项目中引入jquery的ts声明的文件,index加入jquery的js文件就可以在项目中引用jquery,然而需要注意的是,如果使用jquery的选择器进行赋值等操作的时候,因为ionic2将每个push页面都放在了一个页面下,选择器也会把push之前的全部母页面选择到。
5.declarations.d.ts文件
在src文件夹下的declarations.d.ts文件,可以定义公共的声明,例如declare var BMap;,那么在index引用百度地图之后,就可以在每个页面直接使用BMap调用baidu地图的方法,同样自己写的一些js公共方法,可以在这个文件中声明。
其它的以后再写
- 使用ionic2开发的一些问题及对策
- 兼职团队开发时遇到的一些问题及对策
- BCB5:TrayIcon控件的使用、问题及对策
- ionic2 遇到的一些小问题
- 汉英口语存在的问题及对策
- caffe训练图片的问题及对策
- 对象关系映射中的一些问题及对策
- 使用ionic2开发项目
- 使用CocoaPods进行开发的一些问题及策略
- Python 结巴分词在使用过程中遇到的问题及对策
- 使用原生jdbc查询数据库时存在的问题及对策
- Reporting Service 2000的一些bug及对策
- 关于Ionic2\Angular2使用http的一些坑
- Ionic2使用百度地图和html5 geolocation的一些注意事项
- mysql中遇到的问题,以及一些优化对策
- Ionic2 slides的使用
- 项目开发中开发文档出现的问题及其对策
- 遇到问题的对策
- 欢迎使用CSDN-markdown编辑器
- odbc链接oracle client问题
- 数据同步方案(附Java源码)
- Java List 集合
- Ajax核心——XMLHttpRequest基础
- 使用ionic2开发的一些问题及对策
- 从程序员到项目经理(16):原来一切问题都是可以解决的
- 架构设计二之原型模式、单例模式
- ORACLE 给用户授权truncate table 的实现方案
- nyoj1235 A/B Problem(扩展欧几里德求逆元)
- 支持向量机理论详解
- 关于service保活的思考
- 微信小程序image图片自适应宽度比例显示的方法
- 腾讯2017暑期实习生编程题2--感觉薅了社会主义羊毛的做法