gpt4 book ai didi

typescript - 使用 Typescript 的 Reactive Vue Chart.js 组件

转载 作者:行者123 更新时间:2023-12-02 00:50:16 25 4
gpt4 key购买 nike

使用 vue-property-decorator (或者实际上它的 ComponentPropvue-class-component )和 vue-chartjs-typescript ,我正在尝试制作 BarChart -具有属性的组件 chartDataoptions .以下代码在为应用程序提供服务时实际上有效:

<script lang="ts">
import { Bar, mixins } from 'vue-chartjs-typescript'
import Vue from 'vue'
import { Component, Prop } from 'vue-property-decorator'
const { reactiveProp } = mixins

@Component({
extends: Bar,
mixins: [reactiveProp],
})
export default class BarChart extends Vue {
@Prop()
chartData: any

@Prop({default: function () { return {} }})
options!: object

mounted() {
this.renderChart(this.chartData, this.options)
}
}
</script>

但是,它在构建应用程序时失败。我的 IDE (PyCharm Pro) 也给出了同样的错误:

TS2339: Property 'renderChart' does not exist on type 'BarChart'.



所以当使用 @Component({extends: Bar}) ,对于解释器,不清楚这个组件扩展 Bar .我已经尝试扩展 Bar而不是 Vue , 所以 export default class BarChart extends Bar .但这会产生以下错误:

TypeError: Super expression must either be null or a function



任何想法如何解决这个问题?

最佳答案

您可以在类 BarChart 中明确定义要使用的函数

  public renderChart!: (chartData: any, options: any) => void

关于typescript - 使用 Typescript 的 Reactive Vue Chart.js 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58166163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com