Test using react-router-native's Link blows up with "TypeError: Cannot read property 'default' of undefined"
Test using react-router-native's Link blows up with "TypeError: Cannot read property 'default' of undefined"
对于使用 react-router、jest 和 react-test-renderer 的 react-native 应用程序,<Link>
组件似乎不可测试。 react-router documentation 没有提到必须为 react-native 做任何特殊的事情(嘲笑?),我的测试只有在 react-router 的 <Link>
组件包含在正在渲染的树中时才会失败。其他组件(例如<Text>
、<Router>
)没有这个问题。
This basic react-native project 重现爆炸测试。该应用程序在 phone.
中按预期构建和运行
我有配置问题吗?它是没有记录的,还是我只是忽略了它?还是我应该放弃并改用酶?那会有帮助吗?
这是主要的测试输出:
TypeError: Cannot read property 'default' of undefined
at new Link (minimal-bug-repro/node_modules/react-router-native/Link.js:5:379)
at constructClassInstance (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:3438:22)
at updateClassComponent (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:6764:9)
at beginWork (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:7721:20)
at performUnitOfWork (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:11392:16)
at workLoop (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:11424:28)
at renderRoot (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:11507:11)
at performWorkOnRoot (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:12395:11)
at performWork (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:12307:11)
at performSyncWork (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:12281:7) { componentStack:
将 jest 升级到 >= 24.0.0,删除 jest.config.js 的 transform:
部分,并切换到普通的 preset: 'react-native'
.
对于使用 react-router、jest 和 react-test-renderer 的 react-native 应用程序,<Link>
组件似乎不可测试。 react-router documentation 没有提到必须为 react-native 做任何特殊的事情(嘲笑?),我的测试只有在 react-router 的 <Link>
组件包含在正在渲染的树中时才会失败。其他组件(例如<Text>
、<Router>
)没有这个问题。
This basic react-native project 重现爆炸测试。该应用程序在 phone.
中按预期构建和运行我有配置问题吗?它是没有记录的,还是我只是忽略了它?还是我应该放弃并改用酶?那会有帮助吗?
这是主要的测试输出:
TypeError: Cannot read property 'default' of undefined
at new Link (minimal-bug-repro/node_modules/react-router-native/Link.js:5:379)
at constructClassInstance (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:3438:22)
at updateClassComponent (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:6764:9)
at beginWork (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:7721:20)
at performUnitOfWork (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:11392:16)
at workLoop (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:11424:28)
at renderRoot (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:11507:11)
at performWorkOnRoot (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:12395:11)
at performWork (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:12307:11)
at performSyncWork (minimal-bug-repro/node_modules/react-test-renderer/cjs/react-test-renderer.development.js:12281:7) { componentStack:
将 jest 升级到 >= 24.0.0,删除 jest.config.js 的 transform:
部分,并切换到普通的 preset: 'react-native'
.