【问题标题】:Angular 2 + typescript or Angular 2 + Javascript which one is advisableAngular 2 + typescript 或 Angular 2 + Javascript 哪个是可取的
【发布时间】:2019-02-15 16:36:34
【问题描述】:

我对 Angular 有更好的了解,并且我在 Angular 工作了近 3 年。我刚开始学习 Angular 2,有点困惑。我应该学习Angular 2 + Typescript 或者我可以使用Angular + JavaScript ES6。互联网上所有可用的文档都是 Angular + typescript 。 哪个更适合未来?

【问题讨论】:

  • SO 旨在帮助您解决特定问题,而不是技术建议。互联网上还有其他地方可以做到这一点。 :)

标签: javascript typescript angular


【解决方案1】:

在 Angular2 应用程序的上下文中,ES6 和 TypeScript 的主要区别如下:

  • 您不能将类型用于类属性、变量和方法参数。

  • 不支持方法参数的装饰器。例如对于依赖注入,您需要为“参数”属性指定一个静态设置器:

    constructor(http) {
      this.http = http;
    }
    
    static get properties() {
      return [[ Http ]];
    }
    

    使用 TypeScript,您将拥有:

    constructor(private http:Http) {
    }
    

所以两者都可以在 Angular2 中使用。该框架在文档中推广了更多 TypeScript,但 Ionic2(使用 Angular2)在使用“离子启动”创建的应用程序中默认使用 ES6。因此,您可以随意使用其中一个。

TypeScript 的主要优点是它的“强类型”功能,它允许您确保提供/返回正确的结构,并且您不会使用对象上不存在的东西。

另一个很酷的事情是在开发 TypeScript 应用程序时支持 IDE 自动完成。

【讨论】:

    【解决方案2】:
    • Angular2 是用 Typescript 编写的,团队推荐使用它
      使用打字稿。
    • 在 stackoverflow 上提交了超过 90% 的问题/答案 在打字稿中。
    • 此时 angular2 文档在 打字稿(这可能会在正式发布之前更改)

    所以是的,我认为 Angular2 在 Typescript 中会比 ES6/ES5/Dart 更受欢迎,我肯定会建议将它与 Typescript 一起使用。

    【讨论】:

      【解决方案3】:

      根据我的经验,我建议您学习Angular + JavaScript ES6,因为Angular 2 仍处于测试阶段。很多东西在你的学习过程中发生变化,所以你必须一遍又一遍地学习相同的东西。文档或教程也将过时。

      【讨论】:

      • 这不是 OP 提出的问题的答案。你不妨推荐 React + ES6。
      • @drewmoore,OP 询问“我应该学习 Angular 2 + Typescript 或者我可以使用 Angular + JavaScript ES6”。我不明白是什么让他的回答无效
      • 你是对的 - 抱歉,我误读了这个问题。 @Fka 如果你对你的答案做一个微不足道的编辑,我会收回我的反对票(否则我不能)
      猜你喜欢
      • 2018-06-04
      • 2017-01-22
      • 1970-01-01
      • 2016-05-20
      • 1970-01-01
      • 1970-01-01
      • 2016-07-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多