angular - 为什么添加关键字 `let` 或 `var` 会使代码无法编译

标签 angular typescript

在下面的组件类中,如果我添加 let 关键字,代码将无法编译。为什么?

export class HelloComponent {
  @Input() name: string;
  name2:string;//let name2:string doesn't compile.

  constructor(){

  }
}

最佳答案

letvar 只需要/允许局部变量,而不是类字段。

export class HelloComponent {
  @Input() name: string;
  name2:string;//let name2:string doesn't compile.

  constructor(){
    var x = 5; // ok
    let y = 5; // ok
    const z = 5; // ok
  }
}

在方法(或构造函数)之外的类中,只允许变量初始化和方法声明,因此 let 是多余的,因此是不允许的。

关于angular - 为什么添加关键字 `let` 或 `var` 会使代码无法编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47810656/

相关文章:

angular - 是否可以覆盖内置的 Angular 2 管道以便它们可以在全局范围内使用?

angular - 错误 : Cannot find module '@angular/compiler-cli

javascript - 在 Monaco Editor 中滚动到一行

javascript - 如何将某些样式应用于 Angular Material 表中的表行

Angular 2 异常 : TypeError: Cannot read property 'annotations' of undefined

Angular2 重定向路由不会更改浏览器 url

javascript - 如何在输入字段模型属性的 Angular 中制作 getter 和 setter?

Angular 4获取dom元素

typescript - Angular 2 + Ionic 2 + Barcode Scanner DOM 不更新绑定(bind)更改

angular - Validators.required,Validators.email