【问题标题】:Angular 2: Why do I need classes like Hero.ts?Angular 2:为什么我需要像 Hero.ts 这样的类?
【发布时间】:2016-11-17 01:07:57
【问题描述】:

我是来自 Angular 1.3 的 Web 开发人员。现在我正在学习 Angular 2,但有一件事我不清楚:

当我有一个可以查看英雄的页面时,我会有一个控制器和一个服务来获取数据,例如来自 Angular1 中的 REST-API。

在 Angular2 中,我有组件、服务和 Hero 类。为什么我需要那个类“英雄”?

与仅使用 Angular1 中的对象相比,有哪些优势?为我在应用程序中使用的每个对象实现一个类是最佳做法吗?

非常感谢!

【问题讨论】:

  • 什么Hero类?

标签: angular typescript


【解决方案1】:

如果它是来自 https://angular.io/docs/ts/latest/tutorial/toh-pt1.htmlHero 类,那么它只是组件正在使用的数据(显示、编辑……)

如 cmets 中所述。如果使用具体的类,您可以充分利用 TypeScript 和相关工具的静态类型检查功能。

【讨论】:

  • 是的,我认为这是 OP 所引用的。这只是一种更完整的显示方式,而不仅仅是 ":any"。你可以对类做比对象更多的事情。 OP,查看 TypeScript 文档以更全面地了解 TypeScript 与 JavaScript,而不是 Angular 1 与 2...typescriptlang.org -- 编辑:请随意将其移至您的答案中,顺便说一句
  • @user3745073 考虑一下您的测试稍后会如何,或者当您编写一些代码来操作“英雄”的值时。如果是类型检查不是更好吗?
  • 好的,它们主要用于测试和类型检查。明白了 - 谢谢!
  • 类型检查 - 是的。不确定“测试”是什么意思。使用类型而不是匿名对象字面量允许 TS 通过检查您是否正在访问类型实际上在您运行应用程序之前没有的方法的属性来查找错误,并且它提供了更好的自动完成功能。它更像是 Java、C#、C++、Delphi 等语言……几十年来一直在这样做。
猜你喜欢
  • 2011-11-11
  • 1970-01-01
  • 2012-10-11
  • 1970-01-01
  • 2023-02-17
  • 2013-10-11
  • 1970-01-01
  • 2017-01-18
  • 1970-01-01
相关资源
最近更新 更多