怎么才能在App.ts中得到生命周期钩子函数的提示呢?
IMakiMaki opened this issue · 4 comments
IMakiMaki commented
怎么才能在App.ts中得到生命周期钩子函数的提示呢?
yrq110 commented
指的是在app.ts中使用生命周期函数还是相关的react hooks?
IMakiMaki commented
指的是在app.ts中使用生命周期函数还是相关的react hooks?
使用生命周期函数~但是又想得到ts的IDE提示
yrq110 commented
指的是在app.ts中使用生命周期函数还是相关的react hooks?
使用生命周期函数~但是又想得到ts的IDE提示
我看代码里简单处理了下App的生命周期函数,应该直接在App类里使用onLaunch, onShow等相关函数就行,你可以试试。它对每个平台都引入了定义文件,ts提示我猜是有的..
export default function createAppConfig(this: any, App: any) {
const createConfig = (
AppComponent: React.ComponentType = DefaultAppComponent
) => {
return {
...
onLaunch(options: any) {
this._instance = this._render();
if (this._instance && this._instance.onLaunch) {
this._instance.onLaunch(options);
}
},
...
onShow(options: any) {
if (this._instance && this._instance.onShow) {
this._instance.onShow(options);
}
},
...
它对于Page实例提供了一些react hooks,也包含一些跟生命周期相关的。
IMakiMaki commented
指的是在app.ts中使用生命周期函数还是相关的react hooks?
使用生命周期函数~但是又想得到ts的IDE提示
我看代码里简单处理了下App的生命周期函数,应该直接在App类里使用onLaunch, onShow等相关函数就行,你可以试试。它对每个平台都引入了定义文件,ts提示我猜是有的..
export default function createAppConfig(this: any, App: any) { const createConfig = ( AppComponent: React.ComponentType = DefaultAppComponent ) => { return { ... onLaunch(options: any) { this._instance = this._render(); if (this._instance && this._instance.onLaunch) { this._instance.onLaunch(options); } }, ... onShow(options: any) { if (this._instance && this._instance.onShow) { this._instance.onShow(options); } }, ...它对于Page实例提供了一些react hooks,也包含一些跟生命周期相关的。
是的,在Page中可以直接用hooks来实现生命周期的逻辑,但是在App.ts中就要通过在class定义指定名称的函数来实现生命周期逻辑,并没有IDE提示,没有找到相关的d.ts... 所以目前我实现的方式就是手动定义一个描述App内部生命周期的interface,然后再用App class去implements,这样才能得到完备的IDE提示。非常感谢~