代码之家  ›  专栏  ›  技术社区  ›  GTDev

记录中的大写字段名称

  •  1
  • GTDev  · 技术社区  · 6 年前

    是否可以使用大写字段名制作记录?

    类似于:

    [@bs.deriving jsConverter]
    type coordinates = {
      X: int,
      Y: int
    };
    

    我之所以问这个问题,是因为我所使用的js对象具有大写键。

    以下是将记录转换为bucklescript js对象的链接:

    https://bucklescript.github.io/docs/en/generate-converters-accessors.html#convert-between-jst-object-and-record

    1 回复  |  直到 6 年前
        1
  •  1
  •   glennsl Namudon'tdie    6 年前

    您可以在字段前面加下划线,下划线将在生成的JS中删除:

    [@bs.deriving jsConverter]
    type coordinates = {
      _X: int,
      _Y: int
    };
    

    Documentation

    也就是说,我不确定这是否是一个值得信赖的好主意 jsConverter 对于JS互操作,因为它非常有限且不可推广。虽然这种损伤碰巧也在这里起作用,但它似乎更像是一种巧合。