VueJS2:我应该在data()中写入函数吗?

VueJS2:我应该在data()中写入函数吗?,vuejs2,Vuejs2,在数据中编写函数是否被认为是一种良好的做法?我的意思不是在根组件中,而是在它的子组件中 我问这个是因为我见过一个Vue插件,在他们的README.md上使用这个 <template> <v-chart :options="polar"/> </template> <style> /** * The default size is 600px×400px, for responsive charts * you may need to set

数据中编写函数是否被认为是一种良好的做法?我的意思不是在根组件中,而是在它的子组件中

我问这个是因为我见过一个Vue插件,在他们的README.md上使用这个

<template>
<v-chart :options="polar"/>
</template>

<style>
/**
 * The default size is 600px×400px, for responsive charts
 * you may need to set percentage values as follows (also
 * don't forget to provide a size for the container).
 */
.echarts {
  width: 100%;
  height: 100%;
}
</style>

<script>
import ECharts from 'vue-echarts'
import 'echarts/lib/chart/line'
import 'echarts/lib/component/polar'

export default {
  components: {
    'v-chart': ECharts
  },
  data () {
    let data = []

    for (let i = 0; i <= 360; i++) {
        let t = i / 180 * Math.PI
        let r = Math.sin(2 * t) * Math.cos(2 * t)
        data.push([r, i])
    }

    return {
      polar: {
        title: {
          text: '极坐标双数值轴'
        },
        legend: {
          data: ['line']
        },
        polar: {
          center: ['50%', '54%']
        },
        tooltip: {
          trigger: 'axis',
          axisPointer: {
            type: 'cross'
          }
        },
        angleAxis: {
          type: 'value',
          startAngle: 0
        },
        radiusAxis: {
          min: 0
        },
        series: [
          {
            coordinateSystem: 'polar',
            name: 'line',
            type: 'line',
            showSymbol: false,
            data: data
          }
        ],
        animationDuration: 2000
      }
    }
  }
}
</script>

/**
*对于响应图表,默认大小为600px×400px
*您可能需要按如下方式设置百分比值(同样
*不要忘记提供容器的尺寸)。
*/
埃查特先生{
宽度:100%;
身高:100%;
}
从“vue ECharts”导入ECharts
导入“echarts/lib/chart/line”
导入“echarts/lib/component/polar”
导出默认值{
组成部分:{
“v形图”:ECharts
},
数据(){
让数据=[]

对于(设i=0;i而言,数据键工作是组件的内存。它允许您在组件内部存储要跟踪的变量,它是组件反应性的一部分

如果是,何时执行

它将在
beforeCreate
方法之后和
created
方法之前执行

cf:

如果您希望有特定的内容,可以直接在数据函数中格式化数据

您在
vue echart
插件中给出的示例与

let data = []

for (let i = 0; i <= 360; i++) {
    let t = i / 180 * Math.PI
    let r = Math.sin(2 * t) * Math.cos(2 * t)
    data.push([r, i])
}

var vm = new Vue({
  data() {
    return {
      a: data
    }
  }
})
let data=[]
for(设i=0;i