Angular2类的构造函数错误:没有Number的提供程序

模拟城市

我已经使用此处找到的开发工具包开始了一个项目:https : //github.com/datatypevoid/ng2-mean-webpack一切似乎都工作正常,除非当我创建一个带有参数属性的新类时(如此处的官方Typescript文档所示:https ://www.typescriptlang.org/docs/handbook/classes.html ),我会收到一条错误消息控制台中的消息说:

ORIGINAL EXCEPTION: No provider for Number!

这是我的课:

@Component({
  selector: 'grid-tile',
  template: require('./grid-tile.component.html'),
  styleUrls: [require('!style!css!sass!./grid-tile.component.scss')],
  providers: [],
  directives: [],
  pipes: []
})
export class GridTile extends Tile {
  constructor(private x:number, private y: number) {
    super();
  }
}

这是我创建实例的方式:

var tile = new GridTile(3,4);
tiles.push(tile);

当我进一步开发时,我将非常感谢为该问题找到解决方案。我已经按照《 Angular2英雄之旅》教程学习了,参数属性似乎可以正常工作,所以我想知道它是否与开发套件有关,或者仅仅是我要传递的东西。.Angular2对我来说是全新的,所以这可能是我的错。谢谢您的帮助。

罗比西姆74

Angular 2使用MVC模式:用装饰的类@Component等效于Controller。这意味着:

  • 如果不使用依赖注入,则不能向构造函数提供参数(这会产生错误);

  • 该类不应实例化,而必须在引导时,通过路由器或在Angular中通过指令将其作为子代传递时调用。

如果您仔细分析了《英雄旅》,您会发现您创建了一个服务,这是一个可注入的类:

@Injectable()
export class HeroService {
  ...
  }
}

然后,将其作为注入provider(在同一组件或父组件中),并通过将其传递给组件的构造函数进行实例化:

@Component({
  selector: 'my-app',
  ...
  providers: [HeroService]
})
export class AppComponent implements OnInit {
  ...
  constructor(private heroService: HeroService) { }
  ...
}

这样,组件和所有子组件都将继承对注入的类的引用。

在您的示例中,您有两个变量作为参数,并且由于不与组件中的任何提供程序相对应而产生错误。

您可以在这里阅读更多内容

或者,开始:http : //victorsavkin.com/post/118372404541/the-core-concepts-of-angular-2

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Angular2类构造函数错误:没有Number的提供程序

来自分类Dev

Angular2没有提供服务错误的提供程序

来自分类常见问题

错误:在angular2中没有HttpHandler的提供程序

来自分类Dev

Angular 2没有提供程序错误

来自分类Dev

没有匹配的函数错误C ++构造函数

来自分类Dev

“错误:未捕获(承诺):没有Jsonp提供程序”(HTML / Javascript / Typescript / Angular2)

来自分类Dev

没有默认构造函数时,没有默认构造函数错误

来自分类Dev

将一个类传递给另一类的构造函数时,C ++没有默认的构造函数错误

来自分类Dev

Angular2“没有导出的成员引导程序”错误

来自分类Dev

Angular 4 服务构造函数错误

来自分类Dev

“错误:没有匹配的函数可调用”构造函数错误

来自分类Dev

构造函数错误

来自分类Dev

默认构造函数错误,没有用于调用的匹配函数

来自分类Dev

Dagger 2错误:依赖项“如果没有@Inject构造函数就无法提供”

来自分类Dev

Dagger 2错误:依赖项“如果没有@Inject构造函数就无法提供”

来自分类Dev

angular2中没有提供服务错误的提供程序,为什么我需要将其注入到其父组件中?

来自分类Dev

在IE10中升级到Angular2 RC5后,没有提供PlatformRef错误的提供程序

来自分类Dev

在IE10中升级到Angular2 RC5后,没有提供PlatformRef错误的提供程序

来自分类Dev

地图支持上没有空的构造函数错误

来自分类Dev

没有出现函数错误

来自分类Dev

AngularJs中没有函数错误

来自分类Dev

没有出现函数错误

来自分类Dev

Angular2将属性传递给类构造函数

来自分类Dev

类缺少没有参数的构造函数 - 但我提供了一个构造函数

来自分类Dev

netbeans警告:“没有构造函数的实用程序类”

来自分类Dev

Angular2:在 Angular2 中使用 Jquery:错误:没有 Token jQuery 的提供者

来自分类Dev

Angular Materials中没有提供InjectionToken错误的提供程序

来自分类Dev

Angular2构建简单表单时没有ControlContainer的提供程序

来自分类Dev

Angular2 rc5:没有Http的提供程序

Related 相关文章

  1. 1

    Angular2类构造函数错误:没有Number的提供程序

  2. 2

    Angular2没有提供服务错误的提供程序

  3. 3

    错误:在angular2中没有HttpHandler的提供程序

  4. 4

    Angular 2没有提供程序错误

  5. 5

    没有匹配的函数错误C ++构造函数

  6. 6

    “错误:未捕获(承诺):没有Jsonp提供程序”(HTML / Javascript / Typescript / Angular2)

  7. 7

    没有默认构造函数时,没有默认构造函数错误

  8. 8

    将一个类传递给另一类的构造函数时,C ++没有默认的构造函数错误

  9. 9

    Angular2“没有导出的成员引导程序”错误

  10. 10

    Angular 4 服务构造函数错误

  11. 11

    “错误:没有匹配的函数可调用”构造函数错误

  12. 12

    构造函数错误

  13. 13

    默认构造函数错误,没有用于调用的匹配函数

  14. 14

    Dagger 2错误:依赖项“如果没有@Inject构造函数就无法提供”

  15. 15

    Dagger 2错误:依赖项“如果没有@Inject构造函数就无法提供”

  16. 16

    angular2中没有提供服务错误的提供程序,为什么我需要将其注入到其父组件中?

  17. 17

    在IE10中升级到Angular2 RC5后,没有提供PlatformRef错误的提供程序

  18. 18

    在IE10中升级到Angular2 RC5后,没有提供PlatformRef错误的提供程序

  19. 19

    地图支持上没有空的构造函数错误

  20. 20

    没有出现函数错误

  21. 21

    AngularJs中没有函数错误

  22. 22

    没有出现函数错误

  23. 23

    Angular2将属性传递给类构造函数

  24. 24

    类缺少没有参数的构造函数 - 但我提供了一个构造函数

  25. 25

    netbeans警告:“没有构造函数的实用程序类”

  26. 26

    Angular2:在 Angular2 中使用 Jquery:错误:没有 Token jQuery 的提供者

  27. 27

    Angular Materials中没有提供InjectionToken错误的提供程序

  28. 28

    Angular2构建简单表单时没有ControlContainer的提供程序

  29. 29

    Angular2 rc5:没有Http的提供程序

热门标签

归档