【问题标题】:How to document an object with only primitive values?如何记录只有原始值的对象?
【发布时间】:2018-07-17 17:20:40
【问题描述】:

我想使用 JSDoc 记录不能将对象作为值的对象。

允许的示例:

{
  position: 'ground',
  age: 0,
  alive: false
}

不允许的示例:

{
  data: [/* ... */]
  people: {/* ... */}
}

有没有办法做到以上几点?
例如,可以在 @type 中完成。

【问题讨论】:

    标签: javascript javascript-objects jsdoc


    【解决方案1】:

    您可以使用 union 与 @typedef 定义自定义类型

    @typedef {(number|string|boolean|...)} YourType
    

    然后在您的对象文档中引用此类型

    【讨论】:

    • 它又长又麻烦,但是如果它有效,那就太好了¯_(ツ)_/¯
    • 啊,像Object.<string, number|string|boolean>这样的东西呢?
    • @PaulStenne 是的,也可以。哪个更好取决于您的实际需要。如果这是唯一需要这种类型的对象,并且您确定将来不会添加非原始属性,我会建议您这样做Object.<string, number|string|boolean|...>
    • 我认为可以在其他模块中重用 @typedef,但 reading this issue 不鼓励我。那么可以重复使用吗?
    • @JordanEnev 我发现了一些对你有帮助的东西stackoverflow.com/questions/42829250/…
    猜你喜欢
    • 1970-01-01
    • 2022-07-12
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多