ChartJS 道具中的Vuews参数

wmvff8tz  于 2022-11-06  发布在  Chart.js
关注(0)|答案(3)|浏览(152)

是否可以在VueJ上将道具作为函数传递?

<template>
    <line-chart 
    class="card-content" 
    :chartData="lineData2('Temp')" 
    :options="options" 
    :width="800">
    </line-chart>
</template>

chartData道具可以作为方法使用吗?有没有办法在道具上传递方法?
干杯,

polkgigr

polkgigr1#

这取决于你要做什么。如果你想传递一个实际的函数而不是一个函数的结果,你可以做:

<line-chart class="card-content" :chartData="() => lineData2('Temp')" :options="options" :width="800"></line-chart>

它将传递lineData2函数本身,但是,它仍将在父作用域中执行,而不是在组件作用域中执行,因此它将无法访问组件this上下文。
下面是一个JSF示例:https://jsfiddle.net/rz8c1v4L/
如果你只是想传递函数的结果,那么你所做的是好的。

qc6wkl3g

qc6wkl3g2#

是的,你可以。只要你的函数返回一个值。一切都应该工作。

ccrfmcuu

ccrfmcuu3#

是的,你可以!你可以通过提到你的道具的类型来实现,因为它在Vue的文档中写得很清楚。

Vue.component('example', {
  props: {
    propA: {
      type: function
    }
  }
})

同时 checkout 此link

相关问题