使用vue-property-decorator(或者实际上是vue-class-componentComponent
的and )和vue-chartjs-typescript,我正在尝试使用属性和. 以下代码在为应用程序提供服务时实际上有效:Prop
BarChart
chartData
options
<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:“BarChart”类型上不存在属性“renderChart”。
因此,当使用@Component({extends: Bar})
, 对于解释器,不清楚该组件是否扩展了Bar
. 我已经尝试过扩展Bar
而不是Vue
, 所以export default class BarChart extends Bar
. 但这给出了以下错误:
TypeError:超级表达式必须为空或函数
任何想法如何解决这个问题?