我具有如下所示的数据库功能:
如果要在页面模块中使用此查询的结果,该在哪里调用此函数?是否在构造函数或生命周期方法(ionViewDidLoad,ionViewDidEnter)中调用它。请指教。
当前,我在构造函数中调用它,但看起来它会使应用程序变慢。我不确定我是否做对了
getAddressDetails() {
return new Promise((resolve, reject) => {
let sql = "select * from tablename"
this.database.executeSql(sql, []).then((data) => {
resolve(data)}
});
}```
答案 0 :(得分:0)
(...)
constructor
和ionViewDidLoad
之间的主要区别 (...)是有时您想要与DOM交互(也许 初始化地图)。在这种情况下,如果您尝试访问
constructor
中的DOM,则您 将会注意到DOM尚未准备就绪,您将不会 能够获取地图元素。正确的做法是 在ionViewDidLoad
(...)中。
请参见this答案。
constructor
首先被调用,每次实例化一次 页面上,您可以在此处执行不引用HTML DOM的初始化
ionViewDidLoad
在页面DOM已加载之前被调用 比显示的页面还多,每个页面实例化一次, 在这里您可以进行初始化,然后需要准备好HTML DOM
然后查看this答案。