我将@nivo/pie 与"gatsby": "^3.13.0"
. 但是当我构建 gatsby 时出现错误。
WebpackError: ReferenceError: ResizeObserver is not defined
Nivo 的版本是“@nivo/pie”:“^0.79.1”。我不知道解决它。如果您能给我一些建议,我将不胜感激。
这是使用 nivo 饼图的 React 代码。
饼图.tsx
import React from 'react'
import { ResponsivePie } from '@nivo/pie'
const PieChart: React.FC = ({ data }) => {
return (
<>
<div>
<ResponsivePie
data={data}
margin={{ top: 30, right: 80, bottom: 70, left: 80 }}
borderColor={{
from: 'color',
modifiers: [
[
'darker',
0.2,
],
],
}}
arcLabelsTextColor={{
from: 'color',
modifiers: [
[
'darker',
2,
],
],
}}
fill={[
{
match: {
id: 'ruby',
},
id: 'dots',
},
]}
legends={[
{
anchor: 'bottom-right',
direction: 'column',
justify: false,
translateX: 0,
translateY: -1,
},
]}
/>
</div>
</>
)
}
export default PieChart
==================================================== ==================
我可以在更新 gatsby-node.js 后修复它。但我得到了另一个错误WebpackError: Minified React error #130;
。我可以通过这个最终代码修复它。没有构建错误。
饼图.tsx
import React from 'react'
import { ResponsivePie } from '@nivo/pie'
const PieChart: React.FC = ({ data }) => {
return (
<>
{typeof window !== 'undefined' && ResponsivePie &&
<ResponsivePie
data={data}
...
/>}
</>
)
}
export default PieChart
谢谢你。