Ionic 2:RC.0存储不再适用于浏览器

时间:2016-10-05 09:35:23

标签: sqlite typescript storage ionic2 web-sql

问:如何使用WebSQL / SQLite让我的应用程序像以前一样在浏览器中工作?

我一直在使用离子Storage模块,这使我的应用程序能够在浏览器中运行WebSQL,在设备上运行SQLite。

这很简单且有效,现在已经被RC.0打破了。

我的LocalStorageService.ts是这样的:

export class LocalStorageService {

  constructor(...) { ... }

  query(sql: string, params?: any, infoMsg?: string): Promise<any> {
    return new Promise(resolve => {
      return this._db.executeSql(sql, params).then(
        (data) => {
          this._LogService.info(infoMsg);
          resolve(data);
        },
        (error) => {
          this._LogService.error(error);
          resolve(null);
        }
      );
    });
  }

}

然后我可以从任何组件中调用它:

this.LocalStorageService.query('SELECT * FROM blah').then(data => {
    // do stuff with results.
});

注意:键/值对存储,即LocalStorage无法正常工作,我需要在浏览器+设备中使用SQL查询功能。

感谢。