Created by Jerry Wang, last modified on Aug 08, 2014

新建一个view instance:

Callstack2: 这个view的实例化会调用下图所示的另一个function ( r["view"] ). 传入function的参数就是上图中的对象字面量,也就是指定的view detail。

Callstack3: 进到callstack2 所示的function中去,因为待构造的view类型是JS view,因此进入相应分支:

Callstack4: 可以发现JSView constructor是采取lazy load的方式进行加载的:

line 9292行会把执行delegate给下一个function r.
Callstack5: this 指向正在初始化的view instance.

可以发现这个_initCompositeSupport function 函数体内会抛一个AfterInit的event。

Callstack6: 这里的this就是view instance,this.oController就是view controller instance。

把鼠标放在onInit上能观察到我们在Eclipse里写的code。

Callstack7: 重用EventProvider的fireEvent方法来raise event:

Callstack8: I.fFunction就是controller里实现的onInit方法,oListener就是controller,oListener.oView就是view本身。

于是最终call到controller的onInit方法:

view controller lifecycle discussion - onInit相关推荐

  1. SAP UI5 view controller lifecycle discussion - onInit

    Created by Jerry Wang, last modified on Aug 08, 2014 新建一个view instance: Callstack2: 这个view的实例化会调用下图所 ...

  2. view controller lifecycle discussion - beforeRendering

    Created by Jerry Wang on Aug 07, 2014 BeforeRendering Trigger point: Callstack1: h就是当前的html document ...

  3. SAP UI5 视图控制器 View Controller 的生命周期方法 - Lifecycle methods

    SAPUI5 View Controller lifecycle methods Create an Application Project for SAPUI5 打开 Eclipse 并转到菜单选项 ...

  4. 官方文档链接(Core Graphics、View Controller、UICollectionView、UITableView、第三方库)

    Core Graphics Quartz 2D Programming Guide Core Graphics (Framework) Drawing(UIKit).Images and PDF(UI ...

  5. 关于Page翻页效果--Page View Controller

    Page View Controllers 你使用一个page view controller用page by page的方式来展示内容.一个page view controller管理一个self- ...

  6. 关于创建Custom Container View Controller

    在我们现实的项目中,很多刚入行的工程师可能不会很在意controller的设计概念,因为接到的项目有限,而且多数公司的项目架构已经由主程开发好了,所以能接触到的只不过是一些功能模块,这对一个程序员的发 ...

  7. 打造轻量化的View Controller

    2019独角兽企业重金招聘Python工程师标准>>> 本文由破船译自objc 小引 很早以前就看到了这篇文章,该文是Lighter View Controllers中比较重要的一篇 ...

  8. iOS 因为reason: 'Pushing the same view controller instance more than once is not supported而奔溃(下)...

    这个问题是什么意思呢,之前遇到过几次,但程序再次打开时没有问题,也就没有重视,今天又遇到了,无法忍受啊. 控制台报的错误是:"不支持多次推入相同的视图控制器实例". 什么原因造成的 ...

  9. Swift3.0中如何完成不同View Controller之间的切换

    在网上看过一些关于View Controller之间的切换的介绍,但是由于我使用的是swift3.0,所以在一些语法上面有写不同,但是思路还是一样的.下面是我整理的一些关于swift3.0中View ...

最新文章

  1. linux中搭建vue-cli
  2. 屏蔽鼠标右键、Ctrl+N、Shift+F10、F11、F5刷新、退格键
  3. 汇编语言出现的历史背景
  4. python 进程池
  5. numpy pandas 查找在一个区间中的值
  6. PHP spl_autoload_register()函数使用
  7. 【Java从0到架构师】SpringMVC - RESTful
  8. python安装后使用_Python安装后如何使用?
  9. C#把汉字转换成16进制(HEX)并向串口发送数据
  10. Prolog编程求解图搜索问题
  11. 什么是AOP(面向切片编程)
  12. 计算机仿真和vr的区别,你真的知道AR与VR的区别吗?
  13. 利用python打开摄像头及颜色检测
  14. springboot 根据身份证号计算性别和年龄
  15. Google浏览器被劫持解决方法
  16. The Fun Of Algorithm - Day4 - 百钱百鸡问题
  17. 如何在终端里面使用ping来查局域网活动ip
  18. CAD编辑工具中如何查找图纸中的坐标点的位置
  19. Android自定义相机镂空遮罩
  20. 磁盘阵列柜性能介绍(二)

热门文章

  1. 用了2年多快3年的老ASUS本子出了点小问题了
  2. [Remoting专题系列] 十一:事件
  3. Django(part3)--制作我的第一个网页
  4. 在 SAP conversation AI 里消费 ABAP OData 服务
  5. SAP Commerce Cloud 项目 Spartacus 入门
  6. 试图用Session Administration删除某用户的session时报错
  7. SAP Spartacus Loader Meta Reducer学习笔记 - loaderReducer
  8. SAP UI5 Input字段live change事件的一个例子
  9. 如何在Chrome开发者工具console里手动调用focus方法给元素设置focus
  10. SAP Spartacus internationalization(i18n) 的实现 - 关于多语言,翻译支持的实现