home_monitoring.vue 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733
  1. <template>
  2. <view class="m-3 mb-5" ref="ccc">
  3. <view class="position-relative bghead" style="margin-top: -80rpx;">
  4. <image src="@/static/img/other/tou.png" mode="widthFix" class="w-100"></image>
  5. </view>
  6. <view class="p-3">
  7. <view class="centerY mb-3 w-100 font-bold">
  8. <view class="bule_line" style="height: 26rpx;"></view>
  9. <text class="font-bold text-dark ml-2 fs-16 line-height1">身体健康数据</text>
  10. </view>
  11. <view class="bg-white" style="border-radius: 16rpx;overflow: hidden;">
  12. <view class="px-2 py-1 centerY" style="background: linear-gradient(180deg, #F6FFFF 0%, #EAFEFF 100%);">
  13. <view class="w-15">
  14. <view class="picbox">
  15. <image class="picimg" src="@/static/img/other/xy.png" mode="aspectFit"></image>
  16. </view>
  17. </view>
  18. <view class=" ml-2">
  19. <view class="fs-14 font-bold line-height1" style="color: #35B79C;">血压</view>
  20. <view class="fs-10">
  21. <text class="text-gry">测量时间</text>
  22. </view>
  23. </view>
  24. <view class="ml-auto fs-14">
  25. <view class="font-bold text-right line-height1" style="color: #868687;">
  26. <span v-if="dataArray.gxyList&&dataArray.gxyList[0]">{{dataArray.gxyList&&dataArray.gxyList[0].rbp||'未测量'}}/{{dataArray.gxyList&&dataArray.gxyList[0].sbp||'未测量'}} mmHg</span>
  27. <span v-else>未测量</span>
  28. </view>
  29. <view class="fs-12 centerY" style="color: #868687 ;">
  30. <text class="iconfont Clock"></text>
  31. <view class="ml-1">
  32. <span v-if="dataArray.gxyList&&dataArray.gxyList[0]">{{dataArray.gxyList&&dataArray.gxyList[0].uploadTime}}</span>
  33. <span v-else>暂无</span>
  34. </view>
  35. </view>
  36. </view>
  37. <view class="iconfont Chevron-Right fs-24" style="color: #35B79C;"></view>
  38. </view>
  39. <view class="px-3 py-2" v-if="dataArray.gxyList&&dataArray.gxyList.length">
  40. <view class="fs-14 text-gry mb-1">
  41. 近7次测量记录
  42. </view>
  43. <view class="">
  44. <view id="echarts1" class="echarts"></view>
  45. </view>
  46. <view class="mt-3 p-2 mb-2"
  47. style="box-shadow: 0px 2px 13px 2px rgba(211,212,214,0.45);border-radius: 8px;">
  48. <view class="centerY">
  49. <image class="w-10" src="@/static/img/other/xy2.png" mode="widthFix"></image>
  50. <view class="fs-14 font-bold ml-2 space-nowrap">
  51. 血压标准
  52. </view>
  53. <view class=" ml-2 fs-12" style="color: #868687;">
  54. <view class="">
  55. 收缩压:90~139 mmHg
  56. </view>
  57. <view class="">
  58. 舒张压:60~90 mmHg
  59. </view>
  60. </view>
  61. </view>
  62. <view class="centerY mt-2">
  63. <image class="w-10" src="@/static/img/other/zjjy.png" mode="widthFix"></image>
  64. <view class="fs-14 font-bold ml-2 space-nowrap">
  65. 专家建议
  66. </view>
  67. <view class=" ml-2 fs-12" style="color: #868687;">
  68. 正常
  69. </view>
  70. </view>
  71. </view>
  72. </view>
  73. </view>
  74. <view class="bg-white mt-2" style="border-radius: 16rpx;overflow: hidden;">
  75. <view class="px-2 py-1 centerY" style="background: linear-gradient(180deg, #ebf6ff 0%, #D4EBFF 100%);">
  76. <view class="w-15 ">
  77. <view class="picbox">
  78. <image class="picimg" src="@/static/img/other/xuet.png" mode="aspectFit"></image>
  79. </view>
  80. </view>
  81. <view class=" ml-2">
  82. <view class="fs-14 font-bold line-height1" style="color: #369FE5;">血糖</view>
  83. <view class="fs-10">
  84. <text class="text-gry">测量时间</text>
  85. </view>
  86. </view>
  87. <view class="ml-auto fs-14">
  88. <view class="font-bold text-right line-height1" style="color: #868687;">
  89. <span v-if="dataArray.gxyList&&dataArray.tnbList[0]">{{dataArray.tnbList&&dataArray.tnbList[0].glu||'未测量'}} mmol/L</span>
  90. <span v-else>未测量</span>
  91. </view>
  92. <view class=" centerY" style="color: #868687 ;">
  93. <text class="iconfont Clock"></text>
  94. <view class="fs-12 ml-1">
  95. <span v-if="dataArray.tnbList&&dataArray.tnbList[0]">{{dataArray.tnbList&&dataArray.tnbList[0].uploadTime}}</span>
  96. <span v-else>暂无</span>
  97. </view>
  98. </view>
  99. </view>
  100. <view class="iconfont Chevron-Right fs-24" style="color: #369FE5;"></view>
  101. </view>
  102. <view class="px-3 py-2" v-if="dataArray.tnbList&&dataArray.tnbList.length">
  103. <view class="fs-14 text-gry mb-1">
  104. 近7次测量记录
  105. </view>
  106. <view class="">
  107. <view id="echarts2" class="echarts"></view>
  108. </view>
  109. <view class="mt-3 p-2 mb-2"
  110. style="box-shadow: 0px 2px 13px 2px rgba(211,212,214,0.45);border-radius: 8px;">
  111. <view class="centerY">
  112. <image class="w-10" src="@/static/img/other/xtfw.png" mode="widthFix"></image>
  113. <view class="fs-14 font-bold ml-2 space-nowrap">
  114. 血糖标准
  115. </view>
  116. <view class=" ml-2 fs-12" style="color: #868687;">
  117. <view class="">
  118. 3.9~6.9 mmol/L
  119. </view>
  120. </view>
  121. </view>
  122. <view class="centerY mt-2">
  123. <image class="w-10" src="@/static/img/other/zjjy.png" mode="widthFix"></image>
  124. <view class="fs-14 font-bold ml-2 space-nowrap">
  125. 专家建议
  126. </view>
  127. <view class=" ml-2 fs-12" style="color: #868687;">
  128. 正常
  129. </view>
  130. </view>
  131. </view>
  132. </view>
  133. </view>
  134. <view class="bg-white mt-2" style="border-radius: 16rpx;overflow: hidden;">
  135. <view class="px-2 py-1 centerY" style="background: linear-gradient(180deg, #F6FFFF 0%, #EAFEFF 100%);">
  136. <view class="w-15 ">
  137. <view class="picbox">
  138. <image class="picimg" src="@/static/img/other/xinl.png" mode="aspectFit"></image>
  139. </view>
  140. </view>
  141. <view class=" ml-2">
  142. <view class="fs-14 font-bold line-height1" style="color: #35B79C">心率</view>
  143. <view class="fs-10">
  144. <text class="text-gry">测量时间</text>
  145. </view>
  146. </view>
  147. <view class="ml-auto fs-14">
  148. <view class="font-bold text-right line-height1" style="color: #868687;">
  149. <span v-if="dataArray.gxyList&&dataArray.gxyList[0]">{{dataArray.gxyList&&dataArray.gxyList[0].pulse||'未测量'}} 次/分钟</span>
  150. <span v-else>未测量</span>
  151. </view>
  152. <view class="fs-10 centerY" style="color: #868687 ;">
  153. <text class="iconfont Clock"></text>
  154. <view class="ml-1">
  155. <span v-if="dataArray.gxyList&&dataArray.gxyList[0]">{{dataArray.gxyList&&dataArray.gxyList[0].uploadTime}}</span>
  156. <span v-else>暂无</span>
  157. </view>
  158. </view>
  159. </view>
  160. <view class="iconfont Chevron-Right fs-24" style="color: #35B79C "></view>
  161. </view>
  162. <view class="px-3 py-2" v-if="dataArray.gxyList&&dataArray.gxyList.length">
  163. <view class="fs-14 text-gry mb-1">
  164. 近7次测量记录
  165. </view>
  166. <view class="">
  167. <view id="echarts3" class="echarts"></view>
  168. </view>
  169. <view class="mt-3 p-2 mb-2"
  170. style="box-shadow: 0px 2px 13px 2px rgba(211,212,214,0.45);border-radius: 8px;">
  171. <view class="centerY">
  172. <image class="w-10" src="@/static/img/other/xlfw.png" mode="widthFix"></image>
  173. <view class="fs-14 font-bold ml-2 space-nowrap">
  174. 心率标准
  175. </view>
  176. <view class=" ml-2 fs-12" style="color: #868687;">
  177. 60~100 次/分钟
  178. </view>
  179. </view>
  180. <view class="centerY mt-2">
  181. <image class="w-10" src="@/static/img/other/zjjy.png" mode="widthFix"></image>
  182. <view class="fs-14 font-bold ml-2 space-nowrap">
  183. 专家建议
  184. </view>
  185. <view class=" ml-2 fs-12" style="color: #868687;">
  186. 正常
  187. </view>
  188. </view>
  189. </view>
  190. </view>
  191. </view>
  192. </view>
  193. </view>
  194. </template>
  195. <script>
  196. export default {
  197. data() {
  198. return {
  199. dataArray:{}
  200. };
  201. },
  202. onLoad() {
  203. this.find_home_data()
  204. },
  205. methods: {
  206. async find_home_data() {
  207. uni.showLoading({
  208. title: '加载中'
  209. });
  210. let idCard = uni.getStorageSync('idCard')
  211. let {
  212. data,
  213. code
  214. } = await this.$api.find_home_data({
  215. idCard
  216. })
  217. if (code == 0) {
  218. this.dataArray = data;
  219. if(data&&data.gxyList.length){
  220. this.getdom('echarts1',()=>{
  221. this.chartOption1(data.gxyList, 'echarts1')
  222. })
  223. this.getdom('echarts3',()=>{
  224. this.chartOption3(data.gxyList, 'echarts3')
  225. })
  226. }
  227. if(data&&data.tnbList.length){
  228. this.getdom('echarts2',()=>{
  229. this.chartOption2(data.tnbList, 'echarts3')
  230. })
  231. }
  232. uni.hideLoading();
  233. uni.stopPullDownRefresh()
  234. } else {
  235. uni.hideLoading();
  236. uni.stopPullDownRefresh()
  237. }
  238. console.log(this.dataArray)
  239. },
  240. getdom(dom,cb){
  241. let timer = setInterval(()=>{
  242. if(document.getElementById(dom)){
  243. clearInterval(timer)
  244. cb&&cb()
  245. }
  246. },300)
  247. }
  248. },
  249. onPullDownRefresh() {
  250. this.find_home_data()
  251. }
  252. }
  253. </script>
  254. <script module="echarts" lang="renderjs">
  255. import * as echarts from 'echarts';
  256. const config = {
  257. pulse: [60, 100],
  258. temperature: [36.5, 37.5],
  259. shrink: [90, 139],
  260. diastole: [60, 90],
  261. shrinktop: [90, 149], //大于65
  262. shrinklow: [90, 139], //小于65
  263. bmi: [18.50, 23.90],
  264. urine1: [
  265. [53, 106],
  266. [44, 97], "肌酐"
  267. ],
  268. urine2: [0, 30, "微量白蛋白"],
  269. urine3: [8.4, 13.2, "尿微/肌酐"],
  270. kidney1: [
  271. [208, 428],
  272. [155, 357], "血尿酸"
  273. ],
  274. kidney2: [
  275. [54, 133],
  276. [44, 97], "血肌酐"
  277. ],
  278. kidney3: [13.9, 6.1, "尿素氮"],
  279. bloodFat1: [0.45, 1.7, "甘油三酯"],
  280. bloodFat2: [2.85, 5.69, "总胆固醇"],
  281. bloodFat3: [0, 3.4, "低密度脂蛋白"],
  282. bloodFat4: [1.16, 1.55, "高密度脂蛋白"],
  283. lvision: [1.0, 5.0, '左视力'],
  284. rvision: [1.0, 5.0, '右视力'],
  285. bloodGlucose: [3.9, 6.9, '血糖'],
  286. chol: [2.85, 5.69, '总胆固醇'],
  287. ua: [
  288. [149, 416],
  289. [89, 357], '尿酸'
  290. ],
  291. spo2: [95, 99, '血氧'],
  292. rxyl: [0, 0],
  293. ryjl: [0, 0],
  294. }
  295. export default {
  296. mounted() {
  297. console.log(echarts)
  298. // this.initChart('echarts1', this.option)
  299. // this.initChart('echarts2', this.option2)
  300. },
  301. methods: {
  302. initChart(dom, option) {
  303. let chart = echarts.init(document.getElementById(dom))
  304. chart.setOption(option)
  305. },
  306. // updateEcharts(newValue, oldValue, ownerInstance, instance) {
  307. // // 监听 service 层数据变更
  308. // myChart.setOption(newValue)
  309. // },
  310. onClick(event, ownerInstance) {
  311. // 调用 service 层的方法
  312. },
  313. check({
  314. type,
  315. value,
  316. age,
  317. sex
  318. }) {
  319. let msg = uni.getStorageSync('userData')
  320. let arr = config
  321. if (type == 'shrink' && age) {
  322. if (msg.age > 65) {
  323. if (value > arr['shrinktop'][1]) {
  324. return true
  325. }
  326. if (value < arr['shrinktop'][0]) {
  327. return true
  328. }
  329. } else {
  330. if (value > arr['shrinklow'][1]) {
  331. return true
  332. }
  333. if (value < arr['shrinklow'][0]) {
  334. return true
  335. }
  336. }
  337. }
  338. if (sex) {
  339. if (msg.sex == 1) {
  340. if (value > arr[type][0][1]) {
  341. return true
  342. }
  343. if (value < arr[type][0][0]) {
  344. return true
  345. }
  346. } else {
  347. if (value > arr[type][1][1]) {
  348. return true
  349. }
  350. if (value < arr[type][1][0]) {
  351. return true
  352. }
  353. }
  354. }
  355. if (value > arr[type][1]) {
  356. return true
  357. }
  358. if (value < arr[type][0]) {
  359. return true
  360. }
  361. return false
  362. },
  363. chartOption1(data, dom) {
  364. // console.log(data)
  365. let data1 = [],
  366. data2 = [],
  367. data3 = [],
  368. time = []
  369. data.map((item) => {
  370. time.push(this.$mf.timeTrans({
  371. time: item.uploadTime,
  372. format: 'M.D'
  373. }))
  374. data1.push(item.sbp)
  375. data2.push(item.rbp)
  376. data3.push(item.pulse)
  377. })
  378. let arr = []
  379. data.map((item, index) => {
  380. if (this.check({
  381. type: 'shrink',
  382. value: data1[index],
  383. age: true
  384. })) {
  385. arr.push({
  386. name: '收缩压',
  387. value: [item.uploadTime, data1[index]],
  388. symbolSize: 8,
  389. })
  390. }
  391. if (this.check({
  392. type: 'diastole',
  393. value: data2[index]
  394. })) {
  395. arr.push({
  396. name: '舒张压',
  397. value: [item.uploadTime, data2[index]],
  398. symbolSize: 8,
  399. })
  400. }
  401. })
  402. // console.log(arr)
  403. var option = (option = {
  404. legend: {
  405. data: ['收缩压', '舒张压', '心率'],
  406. },
  407. tooltip: {
  408. formatter: function(params) {
  409. console.log(params)
  410. let str =
  411. '<view style="padding:0px;width:140px"><view>' +
  412. params[0].name +
  413. '</view><view class="centerY" style="margin-top:6px"><view style="background:#5470c6;width:10px;height:10px;border-radius: 50%;" ></view><view class="" style="margin-left:4px">' +
  414. params[0].seriesName +
  415. '</view> <view class="ml-auto font-bold">' +
  416. params[0].value +
  417. '</view></view> <view class="centerY" style="margin-top:6px"><view style="background:#91cc75;width:10px;height:10px;border-radius: 50%;" ></view><view class="" style="margin-left:4px">' +
  418. params[1].seriesName +
  419. '</view><view class="ml-auto font-bold">' +
  420. params[1].value +
  421. '</view></view><view class="centerY" style="margin-top:6px"><view style="background:#fac858;width:10px;height:10px;border-radius: 50%;" ></view><view class="" style="margin-left:4px">' +
  422. params[2].seriesName +
  423. '</view><view class="ml-auto font-bold">' +
  424. params[2].value +
  425. '</view></view></view>'
  426. return str
  427. },
  428. trigger: 'axis',
  429. axisPointer: {
  430. type: 'cross',
  431. label: {
  432. backgroundColor: '#6a7985',
  433. },
  434. },
  435. },
  436. grid: {
  437. top: '20%',
  438. left: '3%',
  439. right: '5%',
  440. bottom: '3%',
  441. containLabel: true,
  442. },
  443. xAxis: [{
  444. type: 'category',
  445. axisPointer: {
  446. type: 'shadow',
  447. },
  448. data: time.reverse(),
  449. }, ],
  450. yAxis: [{
  451. type: 'value',
  452. }, ],
  453. series: [{
  454. name: '收缩压',
  455. label: {
  456. show: true,
  457. formatter: '{@score}',
  458. position: 'top'
  459. },
  460. smooth: true,
  461. type: 'line',
  462. data: data1.reverse(),
  463. },
  464. {
  465. name: '舒张压',
  466. label: {
  467. show: true,
  468. formatter: '{@score}',
  469. position: 'bottom',
  470. },
  471. smooth: true,
  472. type: 'line',
  473. data: data2.reverse(),
  474. },
  475. {
  476. type: 'effectScatter',
  477. coordinateSystem: 'cartesian2d',
  478. data: arr,
  479. showEffectOn: 'render',
  480. // zlevel:1,
  481. rippleEffect: {
  482. // 波纹的绘制方式,可选'stroke'和'fill'
  483. brushType: 'fill',
  484. },
  485. itemStyle: {
  486. color: '#F2597F'
  487. },
  488. hoverAnimation: false,
  489. },
  490. ],
  491. })
  492. if (document.getElementById(dom)) {
  493. this.initChart(dom, option)
  494. }
  495. },
  496. chartOption2(data) {
  497. // console.log(data)
  498. let data1 = [],
  499. time = []
  500. data.map((item) => {
  501. time.push(this.$mf.timeTrans({
  502. time: item.uploadTime,
  503. format: 'M.D'
  504. }))
  505. data1.push(item.glu)
  506. })
  507. let arr = []
  508. data.map((item, index) => {
  509. if (this.check({
  510. type: 'bloodGlucose',
  511. value: data1[index],
  512. age: true
  513. })) {
  514. arr.push({
  515. name: '血糖',
  516. value: [item.uploadTime, data1[index]],
  517. symbolSize: 8,
  518. })
  519. }
  520. })
  521. var option = (option = {
  522. legend: {
  523. data: ['血糖'],
  524. },
  525. tooltip: {
  526. trigger: 'axis',
  527. axisPointer: {
  528. type: 'cross',
  529. label: {
  530. backgroundColor: '#6a7985',
  531. },
  532. },
  533. },
  534. grid: {
  535. top: '20%',
  536. left: '3%',
  537. right: '5%',
  538. bottom: '3%',
  539. containLabel: true,
  540. },
  541. xAxis: [{
  542. type: 'category',
  543. axisPointer: {
  544. type: 'shadow',
  545. },
  546. data: time.reverse(),
  547. }, ],
  548. yAxis: [{
  549. type: 'value',
  550. }, ],
  551. series: [{
  552. name: '血糖',
  553. label: {
  554. show: true,
  555. formatter: '{@score}',
  556. position: 'top'
  557. },
  558. smooth: true,
  559. type: 'line',
  560. data: data1.reverse(),
  561. itemStyle: {
  562. color: '#369FE5'
  563. },
  564. },
  565. {
  566. type: 'effectScatter',
  567. coordinateSystem: 'cartesian2d',
  568. data: arr,
  569. showEffectOn: 'render',
  570. // zlevel:1,
  571. rippleEffect: {
  572. // 波纹的绘制方式,可选'stroke'和'fill'
  573. brushType: 'fill',
  574. },
  575. itemStyle: {
  576. color: '#F2597F'
  577. },
  578. hoverAnimation: false,
  579. },
  580. ],
  581. })
  582. this.$nextTick(() => {
  583. if (document.getElementById('echarts2')) {
  584. this.initChart('echarts2', option)
  585. }
  586. })
  587. },
  588. chartOption3(data, dom) {
  589. // console.log(data)
  590. let data1 = [],
  591. data2 = [],
  592. data3 = [],
  593. time = []
  594. data.map((item) => {
  595. time.push(this.$mf.timeTrans({
  596. time: item.uploadTime,
  597. format: 'M.D'
  598. }))
  599. data3.push(item.pulse)
  600. })
  601. let arr = []
  602. data.map((item, index) => {
  603. if (this.check({
  604. type: 'pulse',
  605. value: data3[index]
  606. })) {
  607. arr.push({
  608. name: '心率',
  609. value: [item.uploadTime, data3[index]],
  610. symbolSize: 10,
  611. })
  612. }
  613. })
  614. // console.log(arr)
  615. var option = (option = {
  616. legend: {
  617. data: ['心率'],
  618. },
  619. tooltip: {
  620. trigger: 'axis',
  621. axisPointer: {
  622. type: 'cross',
  623. label: {
  624. backgroundColor: '#6a7985',
  625. },
  626. },
  627. },
  628. grid: {
  629. top: '20%',
  630. left: '3%',
  631. right: '5%',
  632. bottom: '3%',
  633. containLabel: true,
  634. },
  635. xAxis: [{
  636. type: 'category',
  637. axisPointer: {
  638. type: 'shadow',
  639. },
  640. data: time.reverse(),
  641. }, ],
  642. yAxis: [{
  643. type: 'value',
  644. }, ],
  645. series: [{
  646. name: '心率',
  647. label: {
  648. show: true,
  649. formatter: '{@score}',
  650. position: 'top',
  651. },
  652. itemStyle: {
  653. color: '#35B79C'
  654. },
  655. smooth: true,
  656. type: 'line',
  657. data: data3.reverse(),
  658. areaStyle: {
  659. color: {
  660. type: 'linear',
  661. x: 0,
  662. y: 0,
  663. x2: 0,
  664. y2: 1,
  665. global: false,
  666. colorStops: [{
  667. offset: 0,
  668. color: 'rgba(53,183,156,.7)'
  669. },
  670. {
  671. offset: 0.5,
  672. color: 'rgba(53,183,156,0.3)'
  673. },
  674. {
  675. offset: 1,
  676. color: 'rgba(53,183,156,0)'
  677. }
  678. ]
  679. }
  680. },
  681. },
  682. {
  683. type: 'effectScatter',
  684. coordinateSystem: 'cartesian2d',
  685. data: arr,
  686. showEffectOn: 'render',
  687. // zlevel:1,
  688. rippleEffect: {
  689. // 波纹的绘制方式,可选'stroke'和'fill'
  690. brushType: 'fill',
  691. },
  692. itemStyle: {
  693. color: '#F2597F'
  694. },
  695. hoverAnimation: false,
  696. },
  697. ],
  698. })
  699. if (document.getElementById(dom)) {
  700. this.initChart(dom, option)
  701. }
  702. },
  703. }
  704. }
  705. </script>
  706. <style lang="scss">
  707. page {
  708. background: #F5F9FF;
  709. }
  710. .echarts {
  711. width: 100%;
  712. height: 400rpx;
  713. }
  714. </style>