События onClick, не работающие на Victory Pie React-Native

<View
    style={styles.chart}}} >
    <Svg height={400} width={400}>
      <VictoryPie
        colorScale={["#00897B", "#7fc4bd", "#b70104" ]}
        innerRadius={90}
        style={{
          labels: {
            fontSize: 18, fill: "#ffffff"
          }
        }}
        animate={{ duration: 1500 }}
        data={this.state.data}
        padding={{ top: 0, bottom: 35, right:10, left:10 }}
        labelRadius={100}
        standalone={false}
        width={400}
        height={400}
        events={[{
          target: "data",
          eventHandlers: {
            onClick: () => {
              return [
                {
                  target: "data",
                  mutation: (props) => {
                    console.log('index: '+props.index);
                    return null;
                  }
                }, {
                  target: "labels",
                  mutation: (props) => {
                    console.log('text: '+props.text);
                    return null;
                  }
                }
              ];
            }
          }
        }]}/>
      <VictoryLabel
        x={200} y={200}
        textAnchor="middle"
        style={{ fontSize: 23,fill: 'white'}}
        text="Total Revenue"/>
    </Svg>
</View>

Я использовал standalone={false} в Victory Pie, потому что он находится под svg, как предлагали многие в проблемах с диаграммой побед в github, но бесполезно, потому что он не запускает события. Его не работает как в IOS и Android. пожалуйста, помогите мне

1 ответ

Решение

Я нашел ответ заменить onClick в обработчиках событий onPressIn.

    <VictoryPie
          data={array}
          width={350}
          height={350}
          innerRadius={95}
          colorScale={["#00897B", "#7fc4bd", "#b70104" ]}
          events={[
            {
              target: 'data',
              eventHandlers: {
                onPressIn: () => {
                  return [
                    {
                      target: 'data',
                      mutation: dataProps => {
                          console.log('item selected is',dataProps.index)
                            return {}
                      }
                    }
                  ]
                },
                onPressOut: () => {
                }
              }
            }
          ]}
     />
Другие вопросы по тегам