在某些文件上获取“ TypeError:无法将符号值转换为字符串”

时间:2019-11-16 02:17:25

标签: javascript node.js reactjs typescript react-scripts

我有一个具有默认设置的create-react-app。通过一些测试,我得到了

TypeError: Cannot convert a Symbol value to a string

      2 | import * as React from 'react';
      3 | 
    > 4 | import { SomeItem } from 'some-library';
        | ^

      at Object.get (node_modules/create-emotion-styled/dist/index.cjs.js:216:200)
          at Proxy.toString (<anonymous>)
          at Array.forEach (<anonymous>)
      at Object.<anonymous> (src/components/__tests__/SampleComponent.test.tsx:4:1)

这仅在 some 个文件上发生。此特定的导入import { SomeItem } from 'some-library';位于我的所有测试文件中,但其中一些通过了,其中一些引发了此错误。

这只是为了进行测试;构建和开发服务器工作正常。

我很困惑,因为这不是一个一致的错误,所以我不知道如何调试它。

更新

似乎问题出在react-scripts上;我降级到v3.0.0并重新运行测试(由于安装了其他所有模块,因此必须与SKIP_PREFLIGHT_CHECK=true一起运行),并且测试顺利通过。

1 个答案:

答案 0 :(得分:1)

我无法发表评论,对不起,我无法问您任何问题。

您似乎正在尝试使用情感。

在情感v10中不支持create-emotion-styled,请查看this问题,并考虑改用CacheProvider