ionic学习笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jbguo/article/details/82259045
  1. 目录权限问题,退出到上一个目录,执行 sudo chmod -R 777 目录名
  2. 快速生成页面或者模块 ionic g page 注意generator可简写为g
  3. 全局的样式定义好记得导入
  4. 组件的样式单独写组件样式文件
  5. 注意全局样式对组件样式的影响
  6. showWhen=’ios’ 决定在什么设备显示
  7. 定义公共baseUI实现代码复用 页面可继承自baseUI,可调用公司ui中的方法
  8. ionViewDidEnter 调用些生命周期函数判断用户登录情况
  9. 注意modal和nav的使用场景和区别
    a. modal是一个临时,过渡的弹窗
    b. nav用于层级关系的页面展示
  10. nav导航到子页面返回,应该使用this.navCtrl.pop()
  11. 资源文件(图片)注意清除浏览器缓存,可以图像后面加上时间戳 如new Date()
  12. 清除本地存储 this.storage.remove(‘UserId’)
  13. 定义modal弹出页面关闭后刷新父页面的方法(父页面函数的回调)
    modal.onDisMiss( () => {
    this.loadUserPage(); //函数回调 这样处理的原因是modal关闭后不会触发生命周期
    // 的ionViewDidEnter()
    })
  14. ionic build 将src目录下的文件打包到已经添加的平台
  15. app的图标和启动图放到项目后面去做
  16. app的开发应该是迭代敏捷的,不要一下子就想做非常精美
  17. chrome 控制台部分警告是需要在真机或者模拟器中模拟
  18. ionic 生命周期ionViewDidLoad() 中做页面数据加载的绑定
  19. 页面刷新不成功,记得重新保存页面触发ionic重新build
  20. 有时候代码没生效,也可以重新齐心启动 ionic serve
  21. modal传参this.modalCtrl.create(AnswerPage,{“id”: this.id})
  22. modal接收参数 this.id = navParams.get(‘id’);
  23. html中定义链接到子页面的方法,元素加上属性[navPush]=”chatDetailsPage” [navParams]=”userInfo”
  24. ionViewWillLeave() 生命周期函数可在些写取消订阅的操作 如this.event.unsubscribe(‘chat.received’)
  25. 如何在typescript中引入javascript的包 例 import * as moment from ‘moment’
  26. pipe管道用来处理返回的数据 如时间戳的转换,类型1,2,3转换为对应值等 像一个管子一样,将你定义的方法流到所有你使用的地方去.例{{message.time | relativetime}}
  27. loading.dismissAll() 有的时候view没有隐藏,可调用,切换页面快速的时候可以会出现
  28. component如何传递参数, 通过@Input(‘datatype’) dataSourceType // datatype外部传递进来,dataSourceType 本地接收的参数命名
  29. 注意component没有生命周期的函数ionViewDidLoad,组件有自己的ngAfterContentInit方法,
  30. ionic有官方组件和自定义的组件 ionic整个项目都是一个组件树,自定义组件时可参考官方组件(github上查找)进行开发
  31. 子页面返回父页面不停刷新的问题是因为 刷新方法写在了ionViewDidEnter,把刷新方法写在ionViewDidLoad就可,这样只在第一次加载的时候刷新
  32. BehaviorSubject 通过这个对象做页面主题替换,此处定义一个settings provider
  33. ion-toggle组件的事件是(ionChange)=’toggleChange’
  34. native 组件如qrscanner放在app.module.ts的provider集合中
  35. 注意二维码扫描的跳转,animate高为false可以保证相机在整个屏幕中显示,不然的话不会显示相机
    gotoScanQRcode(){
    this.navCtrl.push(ScanPage,null,{‘animate’: false})
    }
  36. 报错cordova_not_available是因为在浏览器环境,不是在原生app环境
  37. ionic cordova resources生成图标和启动图,第一次执行密码需要邮箱账号密码
  38. config.xml 关于里面的的内容修改,如版本号,appName
  39. ionic cordova build android 命令行打包生成apk文件;可以使用android studio打包比较方便(报错处理:ionic cordova platform rm android && ionic cordova platform add [email protected]
  40. 生成ios步骤ionic cordova platform rm ios , ionic cordova platform add ios
  41. 打包ios命令 ionic cordova build ios 使用 ionic cordova build ios –prod –release 打包文件更小
  42. ionic部署在浏览器或者微信中 ionic build 打包完成可以把platforms/brower/www 目录下内容部署到静态站点
  43. 启动真机模拟器调试 ionic cordova emulate ios -lc
  44. 查看模拟机 ionic cordova emulate ios –target –list
  45. 启动指定模拟机 ionic cordova emulate ios –target=’iPhone-6’ -lc

猜你喜欢

转载自blog.csdn.net/jbguo/article/details/82259045