NervJS 1.4 beta3 test-utils 报错
ZhangJian-3ti opened this issue · comments
Works well in 1.3.x版本。But broke in 1.4.
TypeError: Cannot read property 'forEach' of undefined
34 |
35 | it(`somehow throw error`, () => {
> 36 | const component = renderIntoDocument(<Campaign campaignProps={mockCampaign.events} />)
| ^
37 | const componentDom = findDOMNode(component, 'swiperContent')
38 | const items = componentDom.querySelectorAll('.swiperImage')
at forEach (node_modules/nervjs/src/hooks.ts:123:11)
at renderComponent (node_modules/nervjs/dist/index.js:1702:5)
at renderComponent (node_modules/nervjs/src/lifecycle.ts:98:20)
at ComponentWrapper.mountComponent [as init] (node_modules/nervjs/src/full-component.ts:47:17)
at init (node_modules/nervjs/src/vdom/create-element.ts:27:47)
at createElement (node_modules/nervjs/src/lifecycle.ts:69:10)
at mountVNode (node_modules/nervjs/src/lifecycle.ts:107:28)
at ComponentWrapper.mountComponent [as init] (node_modules/nervjs/src/full-component.ts:47:17)
at createElement (node_modules/nerv-test-utils/node_modules/nervjs/dist/index.js:1333:29)
at mountVNode (node_modules/nerv-test-utils/node_modules/nervjs/dist/index.js:1454:12)
at Object.render (node_modules/nerv-test-utils/node_modules/nervjs/dist/index.js:1729:15)
at renderIntoDocument (node_modules/nerv-test-utils/src/index.ts:16:16)
出现这个错误最大的可能是在这个测试页面 JSX 不是由 1.4 beta 版本的 nerv 创建的,1.4 版本 components.effect
一定是一个数组。
你可以检查一下 nerv-test-utils 以及它依赖的 nervjs 是不是 1.4 版本。
Just update the dependencies to v1.4 b3 manually, the problem still exists.
我试了可以。如果你觉得不行可以去 https://codesandbox.io/s/r4qzmo75np 复现
added test-utils can reproduce this:
https://codesandbox.io/s/wnm08wm825
https://codesandbox.io/s/o6y5kz8xq
那是因为 @tarojs/components 的 nervjs 依赖也没有更新到 beta
After upgrade the dependencies manually, it works well as expected. Thanks.
Hope new version released soon.