personnelChartMixin.js 938 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. export default {
  2. filters: {
  3. },
  4. props: {
  5. data: {
  6. type: Array,
  7. default: () => {
  8. return [];
  9. }
  10. },
  11. avg: {
  12. type: [Number, String],
  13. default: -1
  14. }
  15. },
  16. computed: {
  17. dataEmpty() {
  18. if (this.data) {
  19. return this.data.length <= 0;
  20. }
  21. return true;
  22. }
  23. },
  24. watch: {
  25. data: function() {
  26. this.$set(this.chartData, 'rows', this.handlerData(this.data, this.text, this.count));
  27. },
  28. },
  29. methods: {
  30. handlerData: function(data, text, count) {
  31. var arr = [];
  32. data.forEach(element => {
  33. var item = {};
  34. item[text] = element.text;
  35. item[count] = Number(element.count);
  36. arr.push(item)
  37. });
  38. return arr;
  39. }
  40. }
  41. }