React-table [v7]使用Storybook渲染

问题描述 投票:1回答:1

我正在尝试在Storybook https://storybook.js.org/中呈现react-table组件>

Error: Uncaught TypeError: Cannot read property 'map' of undefined
at decorateColumnTree (vendors~main.4c20d65610ba8d62ac56.bundle.js:210768)
at vendors~main.4c20d65610ba8d62ac56.bundle.js:211338
at mountMemo (vendors~main.4c20d65610ba8d62ac56.bundle.js:186644)
at Object.useMemo (vendors~main.4c20d65610ba8d62ac56.bundle.js:186866)
at Object.useMemo (vendors~main.4c20d65610ba8d62ac56.bundle.js:217699)
at useTable (vendors~main.4c20d65610ba8d62ac56.bundle.js:211337)
at Table (main.4c20d65610ba8d62ac56.bundle.js:17507)
at renderWithHooks (vendors~main.4c20d65610ba8d62ac56.bundle.js:186083)
at mountIndeterminateComponent (vendors~main.4c20d65610ba8d62ac56.bundle.js:188317)
at beginWork$1 (vendors~main.4c20d65610ba8d62ac56.bundle.js:189461)

追究错误的根源,看来decorateColumnTree接收的columns参数未定义。 https://github.com/tannerlinsley/react-table/blob/1d8ffb18f7afc862db5d4f1da5cfc6781ed10553/src/hooks/useTable.js#L166-L169

storybook version: ^5.1.9

react-table version: ^7.0.0-rf.15

我正在尝试在Storybook https://storybook.js.org/中呈现react-table组件,错误:未被捕获的TypeError:无法读取decorateColumnTree(供应商〜主。...上未定义的属性'map')>] >

一段时间后,我确定了。这主要是数据和变量作用域的问题。

最初,我正在这样做

import dummyData from './mockData'

table.addDecorator(withKnobs).add('Table', () =>
  React.createElement(() => {
    return (
      <Table
        columns={dummyData.columns}
        data={dummyData.data}
      />
    )
  })
)

但是,dummyDataReact.createElement中未定义,所以我选择这样做:

table.addDecorator(withKnobs).add('NextTable', () =>
  React.createElement(() => {
    return (
      <MockTableComponent />
    )
  })
)

其中模拟数据和模拟列在呈现MockTableComponent<Table />中存储,>

reactjs react-hooks react-table storybook
1个回答
1
投票

一段时间后,我确定了。这主要是数据和变量作用域的问题。

© www.soinside.com 2019 - 2024. All rights reserved.