代码之家  ›  专栏  ›  技术社区  ›  Ryan Wheale

FlowJS-number…与字符串不兼容

  •  1
  • Ryan Wheale  · 技术社区  · 7 年前

    有人能解释一下为什么我在这个代码中出现以下FlowJS错误吗?

    1 与字符串[2]不兼容

    (白色的盒子 number enter image description here

    如果我取消决赛 map()

    function splitKey(key: string | Array<string | number>): Array<any> {
      const arr = typeof key === 'string' ? key.split('.') : key;
      return arr.length === 1 && arr[0] === '' ? [] : arr;
    }
    

    更奇怪的是,如果我把值映射到它们自己( map(k => k) ),它会触发错误。在这种情况下,映射值会混淆流是什么?

    function splitKey(key: string | Array<string | number>): Array<any> {
      const arr = typeof key === 'string' ? key.split('.') : key;
      return arr.length === 1 && arr[0] === '' ? [] : arr.map(k => k);
    }
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   skyboyer    7 年前

    感谢 flow's playground 我们可以看到这个错误出现在0.83.0中,但在0.84.0中消失了

    不幸的是,我没有看到任何与这个问题有关的 release notes 所以根本原因还不清楚。