【问题标题】:Angular Dart is giving error : The getter 'injector$Injector' isn't defined for the class 'self'Angular Dart 给出错误:getter 'injector$Injector' 没有为类 'self' 定义
【发布时间】:2018-12-18 07:31:32
【问题描述】:

我只是在 Angular Dart 中尝试路由。我正在关注此https://webdev.dartlang.org/angular/guide/router/1 指南,但出现错误。

此行给出错误final InjectorFactory injector = self.injector$Injector;,错误为The getter 'injector$Injector' isn't defined for the class 'self

import 'package:angular/angular.dart';
import 'package:angular_router/angular_router.dart';
import '../src/app_component.template.dart' as ng;

import 'main.template.dart' as self;

const useHashLS = false;
@GenerateInjector(routerProvidersHash)

final InjectorFactory injector = self.injector$Injector;
// The getter 'injector$Injector' isn't defined for the class 'self' 

void main() {
  runApp(ng.AppComponentNgFactory, createInjector: injector);
}

【问题讨论】:

  • 同样的问题,有进展吗?

标签: dart angular-dart


【解决方案1】:

我偶然发现了一个解决方法,而没有忽略分析器:

import 'main.template.dart' show injector$Injector;

@GenerateInjector(routerProvidersHash)
final InjectorFactory injector = injector$Injector;

显示injector$Injector 似乎可以修复错误。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,因为它完全没有错误,我只是 在 analysis_options.yaml 添加以下内容以忽略错误。

    analyzer:
      errors:
        undefined_getter: ignore
    

    https://stackoverflow.com/a/53304768/2997534回答

    【讨论】:

      【解决方案3】:

      我认为只是因为@GenerateInjector注解不在注入器的正上方

      【讨论】:

        【解决方案4】:

        这可以通过重新启动应用程序来解决。如果您的应用程序正在运行,则停止它并使用命令webdev serve 重新启动。有关更多信息,您可以参考 here

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-06-22
          • 1970-01-01
          • 1970-01-01
          • 2014-12-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-02-06
          相关资源
          最近更新 更多