我的选项对象中有这样的东西
const options = {
plugins: {
legend: {
align: 'end',
}
}
}
根据Chartjs documentation,align接受3个值:
- 启动
- 中心
- 结束
对齐工作正常,我得到了想要的结果,但typescript抱怨对齐的类型应该是'start','center'或'end',而不是字符串。
Type 'string' is not assignable to type ' "end" | "start" | "center" | undefined '
深入到Chartjs的类型定义中,我明白了
export interface LegendOptions<TType extends ChartType> {
....
/**
* Alignment of the legend.
* @default 'center'
*/
align: 'start' | 'center' | 'end';
}
如果我把align改成字符串类型。打字错误消失了,但我不应该这样做。
任何想法/意见/建议都非常感谢!
2条答案
按热度按时间yfjy0ee71#
问题似乎在
react-chartjs-2
库中。如果你切换到chart.js的准系统版本,你就不会有这个问题:https://codesandbox.io/s/goofy-curie-eyxrr?file=/src/App.tsx
fruv7luv2#
尝试添加
as cons
。在their repo中找到此解决方案