【问题标题】:Typescript prevent exports from beeing available globally?打字稿阻止出口在全球范围内可用?
【发布时间】:2021-06-24 22:37:44
【问题描述】:

想象以下打字稿文件夹结构:

index.ts
login/
  --index.ts
  --util.ts
registration/
  --index.ts
  --util.ts

有没有办法将模块的导出(命名空间)限制在文件夹内?例如,如果这两个util.ts 模块都导出了一个名为navigate() 的函数。我想在兄弟 index.ts 中使用该函数,但想防止兄弟文件夹中的意外误用:

login/index.ts 应该只能访问 login/util 导出,而不是 registration/util

另外,最好控制/index.ts 中的哪些方法可用。所以也许我在login/index.ts 中需要navigate(),因此在login/util.ts 中导出它,但想防止它在/index.ts 中使用。这可能与模块语法有关吗? 这是一个组成的例子,我目前使用 ts-node 和一个用 ts 编写的相当大的 e2e-tesing 项目。

谢谢。

【问题讨论】:

    标签: node.js typescript module namespaces export


    【解决方案1】:

    这是可能的。

    您需要将 tsconfig.json 文件添加到每个目录。

    https://www.typescriptlang.org/docs/handbook/tsconfig-json.html

    【讨论】:

    • 我会试一试,但这对我来说似乎真的很老套/非官方,因为这些子文件夹不是独立的项目。文档甚至说 tsconfig.json 表示一个新项目。
    猜你喜欢
    • 1970-01-01
    • 2015-12-09
    • 1970-01-01
    • 1970-01-01
    • 2017-11-09
    • 2017-01-03
    • 2012-12-03
    • 2012-01-13
    • 2014-04-09
    相关资源
    最近更新 更多