You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用routerLink跳转页面时触发NullInjectorError错误求助

错误分析与解决办法

错误原因

这个NullInjectorError是因为Angular依赖注入系统找不到FileChooser和File的服务提供者。Ionic原生插件需要在对应页面模块中明确注册为依赖提供者,否则组件构造函数注入时无法找到对应实例。同时你的组件代码中插件导入路径缺少/ngx后缀,不符合Ionic 6+的规范,也会导致注入失败。

解决步骤

1. 修正组件的插件导入路径

修改组件中的导入语句,补充/ngx后缀:

import { Component, OnInit } from '@angular/core';
import { FileChooser } from '@ionic-native/file-chooser/ngx';
import { File } from '@ionic-native/file/ngx';
import firebase from 'firebase/compat/app'

2. 在页面模块中注册提供者

打开NewFlavorPage对应的模块文件(通常是new-flavor.module.ts),导入插件并在@NgModule的providers数组中添加:

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { IonicModule } from '@ionic/angular';
import { NewFlavorPageRoutingModule } from './new-flavor-routing.module';
import { NewFlavorPage } from './new-flavor.page';
// 导入插件
import { FileChooser } from '@ionic-native/file-chooser/ngx';
import { File } from '@ionic-native/file/ngx';

@NgModule({
  imports: [
    CommonModule,
    FormsModule,
    IonicModule,
    NewFlavorPageRoutingModule
  ],
  declarations: [NewFlavorPage],
  // 添加服务提供者
  providers: [FileChooser, File]
})
export class NewFlavorPageModule {}

3. 验证插件安装(可选)

如果之前未正确安装插件,先执行安装命令:

npm install @ionic-native/file-chooser @ionic-native/file

完成以上操作后重新运行项目,使用routerLink跳转NewFlavorPage时即可解决注入错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 01:35:27