咨询react-native-speedometer中各分段最小与最大值的计算逻辑
解析react-native-speedometer分段的min/max值逻辑
react-native-speedometer的分段范围根本不是自动平均分配maxValue,而是完全由你传入的segments数组自定义每个分段的min和max。
举个实际例子,官方演示里的分段配置大概是这样的:
const segments = [ { min: 0, max: 20, color: '#2ecc71' }, { min: 20, max: 50, color: '#f1c40f' }, { min: 50, max: 80, color: '#e67e22' }, { min: 80, max: 100, color: '#e74c3c' }, ];
每个分段的区间都是手动指定的,和maxValue(这里是100)没有均分关联,只要所有分段里最大的max值和组件的maxValue对应上就行。
你之前误以为是均分,大概率是没注意到segments是需要自己配置的核心参数,组件不会自动生成均分的分段。官方演示里的分段看起来不均分,就是因为开发人员手动设置了不同的区间范围。

如果想确认的话,你可以去翻这个库的源码,核心渲染逻辑里是直接读取segments里每个项的min和max来计算对应的仪表盘分段角度,完全没有自动均分的处理逻辑。
内容的提问来源于stack exchange,提问作者Gomche
相关产品推荐
相关产品推荐

