React native 无法读取属性';数据集';未定义的

React native 无法读取属性';数据集';未定义的,react-native,charts,React Native,Charts,当我更新折线图数据时,总是会出现此错误。我知道setState是错误的,但是找不到具体的修改方法,请帮助。多谢各位 我认为这是问题所在,但没有解决办法 this.setState({ data: { ...this.state.data.$set, dataSets:[{ ...this.state.data.$set.dataSets[0], values }] },

当我更新折线图数据时,总是会出现此错误。我知道setState是错误的,但是找不到具体的修改方法,请帮助。多谢各位

我认为这是问题所在,但没有解决办法

  this.setState({
      data: {
        ...this.state.data.$set,
        dataSets:[{
          ...this.state.data.$set.dataSets[0],
          values
        }]
      },
    xAxis: {
      ...this.state.xAxis.$set.valueFormatter,
      valueFormatter,
      axisMaximum,
      axisMaximum
    },
  }) 
图表github地址:
这是源代码,刚上传图片,感觉不适合阅读

componentDidMount() {
  this.setState(
    update(this.state, {
      data: {
        $set: {
          dataSets: [{
            values: [{y: 10}, {y: 20}, {y: 30.11}, {y: 25.77}],
            label: 'LineChart',
            config: {
              lineWidth: 0.5,
              drawCircles: false,
              highlightColor: processColor('red'),
              color: processColor('red'),
              drawFilled: true,
              fillColor: processColor('red'),
              fillAlpha: 60,
              valueTextSize: 15,
              valueFormatter: "##.000",
            }
          }],
        }
      },
      xAxis: {
        $set: {
          fontFamily:"HelveticaNeue-Medium",
          fontWeight:"bold",
          fontStyle:"italic",
          valueFormatter: ['2017-01-01 10:00:000','2017-02-01 10:00:000','2017-03-01 10:00:000'],
          position: 'BOTTOM' ,
          drawGridLines: false
        }
      },
      yAxis: {
        $set: {
          left: {
            drawLabels: true,
            drawAxisLine: true,
            drawGridLines: false,
            drawValueAboveBar:false,
            zeroLine: {
              enabled: true,
              lineWidth: 1
            }
          },
          right: {
            enabled: false
          }
        }
      },
    })
  );
}

componentWillReceiveProps(nextProps) {
  debugger;
  if (nextProps.zxData !== this.props.zxData) {
    let values=[];
    let valueFormatter=[];
    let axisMaximum=nextProps.zxData.length;
    nextProps.zxData.map((item,key)=>{
    values.push({y:item.YValue});
    valueFormatter.push(item.XValue);
    })
    this.setState({
      data: {
        ...this.state.data.$set,
        dataSets:[{
          ...this.state.data.$set.dataSets[0],
          values
        }]
      },
    xAxis: {
      ...this.state.xAxis.$set.valueFormatter,
      valueFormatter,
      axisMaximum,
      axisMaximum
    },
  })   
  }
}