You need to enable JavaScript to run this app. Ionic6使用@ionic/storage 2.1.3报NullInjectorError无Storage提供者求助
优惠活动
大模型
产品
解决方案
定价
更多

Ionic6使用@ionic/storage 2.1.3报NullInjectorError无Storage提供者求助

你当前的问题核心是Angular的NgModule类没有OnInit生命周期钩子,你写在AppModule里的初始化逻辑永远不会执行,同时在AppModule构造阶段注入未初始化的Storage会触发依赖注入报错,可按以下步骤修复:

  • 清理AppModule中的无效代码,修改后的app.module.ts代码如下:
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { RouteReuseStrategy } from '@angular/router';

import { IonicModule, IonicRouteStrategy } from '@ionic/angular';

import { AppComponent } from './app.component';
import { AppRoutingModule } from './app-routing.module';

import { IonicStorageModule } from '@ionic/storage'
import {HttpClientModule} from '@angular/common/http'

@NgModule({
  declarations: [AppComponent],
  entryComponents: [],
  imports: [
    BrowserModule, 
    HttpClientModule, 
    IonicModule.forRoot(), 
    // 可自定义存储配置,不需要的话留空也可正常运行
    IonicStorageModule.forRoot({
      name: '__localStorage',
      driverOrder: ['indexeddb', 'sqlite', 'websql']
    }), 
    AppRoutingModule
  ], 
  providers: [
    { provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
  ],
  bootstrap: [AppComponent],
})
export class AppModule {}
  • 在AppComponent中完成Storage的初始化,示例代码:
import { Component, OnInit } from '@angular/core';
import { Storage } from '@ionic/storage';

@Component({
  selector: 'app-root',
  templateUrl: 'app.component.html',
  styleUrls: ['app.component.scss'],
})
export class AppComponent implements OnInit {
  constructor(private storage: Storage) {}

  async ngOnInit() {
    // 执行Storage初始化,完成后即可正常调用读写方法
    await this.storage.create();
  }
}
  • 如需在真机使用SQLite提升存储稳定性,安装对应依赖:
# 安装SQLite依赖
npm install cordova-sqlite-storage
# Capacitor项目执行同步
npx cap sync
# Cordova项目执行同步
ionic cordova prepare
  • 确认所有用到Storage的文件中,都是从@ionic/storage导入的Storage类,不要和其他同名类混淆。

内容的提问来源于stack exchange,提问作者Pedro Azevedo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 00:57:05