【问题标题】:How to get private methods working in TypeScript?如何让私有方法在 TypeScript 中工作?
【发布时间】:2019-08-16 19:38:48
【问题描述】:

我有一些代码大致如下:

class A {
  #hidden = 0;
  method() {
    return this.#hidden;
  }
}

这在我使用 JS 时工作正常,但是当我将其转换为 TS 时,由于# 而出现错误Parsing error: Invalid character。有什么办法可以在 TS 中启用此功能?我试图避免使用private 关键字。

【问题讨论】:

  • 我认为 typescript 尚不支持此功能。
  • 这里是Pull Request 虽然

标签: javascript typescript private-members private-methods


【解决方案1】:

Typescript 尚不支持私有字段。有一个PR 的主题可能会使其进入 3.7 或 3.8(只是有根据的猜测,不是团队成员,我对规划没有洞察力)。

与此同时,您可以使用旧的 typescript private 关键字。

class A {
  private hidden = 0;
  method() {
    return this.hidden;
  }
}

【讨论】:

  • 比起新方法,我更喜欢现在的方法。只是我的意见。
  • @GetOffMyLawn 这是 Javascript/Typescript 中宗教分裂的主题。我也更喜欢旧的方式。不过#在这里还不如习惯了?
猜你喜欢
  • 2015-11-25
  • 2021-09-29
  • 2017-04-17
  • 2015-09-07
  • 2012-10-10
  • 2023-01-18
  • 1970-01-01
  • 2019-04-01
  • 2018-08-01
相关资源
最近更新 更多