使用点表示法时tslint prefer-const警告

时间:2018-04-06 22:31:58

标签: typescript tslint

interface obj {
  bar: string
}

function randomFunction() {
  let foo: obj = { bar: "" }
  foo.bar = "hip"
}

let snack: obj = { bar: "" }
snack.bar = "hop"

我从tslint收到这个警告:

  

标识符'foo'永远不会被重新分配;使用'const'而不是'let'。   (比较喜欢-常数)

虽然我在变量snack的第二种情况下没有收到此警告。

我可以摆脱这个警告(在转编时使我的控制台变得杂乱) /* tslint:disable: prefer-const */

我没有在tslint project上找到任何错误报告。 因为我是打字稿的新手,所以我想知道:我这里有什么问题吗?

1 个答案:

答案 0 :(得分:3)

tslint要求您将let更改为const,因为未重新分配标识符foo

可以通过编写const

来删除错误
const foo: obj = { bar: "" };
foo.bar = "hip";

请注意,const修饰符仅表示您无法重新分配标识符:

 const foo = { bar: "" };
 foo = { bar: "" }; // error

它不会使对象本身只读。