我继承了ScrollView,用的ts,在正常情况下在写onLoad的时候是不是需要调用super.onLoad(),写着爽爽的,一气呵成,代码没任何错,可运行的时候就傻逼了,因为ScrollView根本没有onLoad方法,但看官方文档里
明目张胆,信誓旦旦的写着有这个函数,这不坑爹了么,难道非要使用看源代码这么低效的方式才能避免这种情况么?
我继承了ScrollView,用的ts,在正常情况下在写onLoad的时候是不是需要调用super.onLoad(),写着爽爽的,一气呵成,代码没任何错,可运行的时候就傻逼了,因为ScrollView根本没有onLoad方法,但看官方文档里
你的onLoad咋写的,贴出来看看
onLoad(): void {
if (super.onLoad)
super.onLoad();
}
if 判断是发现报错后面加的
那就是父类没有onLoad了
对啊, 我说的就是这个问题,开发者并不知道一个组件是否有onLoad方法,API都一律写着有,但真实的情况是一定要去看源代码才知道
谢谢反馈,事实上,这些都是继承自 Component 的 API,只是没有实现。
为了避免歧义,之后我们会在每个生命周期方法上注明:该方法为生命周期方法,未必会有实现,而且也只能在该方法内部调用父类的实现,不可在其它地方直接调用该方法。