uEchart.vue 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <template>
  2. <view class="charts-box">
  3. <qiun-data-charts type="line" :opts="opts" :chartData="chartData" :canvas2d="true"
  4. canvasId="pPSnGQMxUSQgItJRPiXgRJePqmRONHhG"></qiun-data-charts>
  5. </view>
  6. </template>
  7. <script>
  8. export default {
  9. props: ['tips'],
  10. data() {
  11. return {
  12. chartData: {},
  13. opts: {
  14. color: ["#1890FF", "#91CB74", "#FAC858", "#EE6666", "#73C0DE", "#3CA272", "#FC8452", "#9A60B4",
  15. "#ea7ccc"
  16. ],
  17. padding: [10, 0, 0, 0],
  18. enableScroll: false,
  19. legend: {
  20. show: false
  21. },
  22. xAxis: {
  23. disableGrid: true
  24. },
  25. yAxis: {
  26. gridType: "dash",
  27. dashLength: 2
  28. },
  29. extra: {
  30. line: {
  31. type: "straight",
  32. width: 2,
  33. activeType: "hollow"
  34. }
  35. }
  36. }
  37. };
  38. },
  39. onReady() {
  40. this.getServerData();
  41. },
  42. methods: {
  43. getServerData() {
  44. //模拟从服务器获取数据时的延时
  45. setTimeout(() => {
  46. //模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
  47. let res = {
  48. categories: ["1月", "2月", "3月", "4月", "5月", "6月"],
  49. series: [{
  50. name: this.tips,
  51. data: [35, 8, 25, 37, 4, 20]
  52. }]
  53. };
  54. this.chartData = JSON.parse(JSON.stringify(res));
  55. }, 500);
  56. },
  57. }
  58. };
  59. </script>
  60. <style scoped>
  61. /* 请根据实际需求修改父元素尺寸,组件自动识别宽高 */
  62. .charts-box {
  63. width: 100%;
  64. height: 100%;
  65. }
  66. </style>