uniapp中 使用echart 打包成app

<template>
  <view class="content">
    <view
      class="echarts"
      style="width: 100%; height: 800rpx"
      :prop="option"
      :change:prop="echarts.updateEcharts"
      id="echarts"
    ></view>
  </view>
</template>

<script>
import to from 'await-to-js'

export default {
  data() {
    return {
      dataFlag: true,
      orgName: '',
      orgRole: 'agent',
      option: {
        // ECharts 配置项
        series: [
          {
            type: 'pie',
            data: [
              { value: 335, name: '直接访问' },
              { value: 310, name: '邮件营销' },
              { value: 234, name: '联盟广告' },
              { value: 135, name: '视频广告' },
              { value: 1548, name: '搜索引擎' }
            ]
          }
        ]
      }
    }
  },

  mounted() {
    setTimeout(() => {
      this.getEcharsData()
    }, 1000)
  },

  methods: {
    async getEcharsData() {
    //此处调用后台接口把数据塞进来
      this.$nextTick(() => {
        this.option = {
          tooltip: {
            trigger: 'axis'
          },
          legend: {
            color: ['#F58080', '#47D8BE'],
            data: ['XXXX集团有限公司', 'XXXX股份有限公司'],
            left: 'center',
            bottom: 'bottom'
          },
          grid: {
            top: 'middle',
            left: '3%',
            right: '4%',
            bottom: '3%',
            height: '80%',
            containLabel: true
          },
          xAxis: {
            type: 'category',
            data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
            axisLabel: {
              rotate: 45 // 将标签旋转45度
            },
            axisLine: {
              lineStyle: {
                color: '#999'
              }
            }
          },
          yAxis: {
            type: 'value',

            splitLine: {
              lineStyle: {
                type: 'dashed',
                color: '#DDD'
              }
            },
            axisLine: {
              show: false,
              lineStyle: {
                color: '#333'
              }
            },
            nameTextStyle: {
              color: '#999'
            },
            splitArea: {
              show: false
            }
          },
          series: [
            {
              name: 'XXXX集团有限公司',
              type: 'line',
              data: [800, 900, 220, 130, 660, 289, 800, 900, 220, 130, 660, 289],
              color: '#F58080',

              smooth: true
            },
            {
              name: 'XXXX股份有限公司',
              type: 'line',
              data: [123, 568, 111, 222, 123, 56, 568, 111, 222, 123, 56, 800],

              smooth: true
            }
          ]
        }
      })
    }
  }
}
</script>

<script module="echarts" lang="renderjs">
import * as echarts from 'echarts'

export default {
  mounted() {
    this.myChart = echarts.init(document.getElementById('echarts'))
  },
  methods: {
    //监听配置数据变化,并重新渲染
    updateEcharts(newValue) {
      if (this.myChart) {
        this.myChart.setOption(newValue)
      }
    }
  }
}
</script>

<style lang="scss" scoped>
.echarts {
  width: 100%;
  height: 600rpx;
}
</style>
uniApp是一个基于Vue.js的跨平台框架,用于构建原生移动应用。如果你想在uniApp使用`translate.js`来进行翻译功能,首先你需要确保你已经安装了这个库,通常通过npm或yarn进行安装: ```bash // 使用npm npm install translate-js // 或者使用yarn yarn add translate-js ``` 在uniApp项目中,可以在需要翻译的部分引入`translate.js`并初始化它,例如: ```javascript import Translate from 'translate-js' const translate = new Translate({ // 如果有默认语言设置,可以指定这里 defaultLang: 'en', // 需要翻译的语言列表 supportedLangs: ['en', 'zh'], // 这里假设英语和中文是你支持的 // 可选的翻译源,可以是JSON文件、API或者其他提供翻译服务的资源 // translateResource: '/assets/translations.json' }) function translateText(text) { return translate(text).catch(err => console.error('Translation error:', err)); } export default { translateText }; ``` 然后在需要显示翻译内容的地方,你可以像下面这样调用这个函数: ```vue <template> <button @click="handleTranslate">点击翻译</button> <p v-if="translatedText">{{ translatedText }}</p> </template> <script> export default { methods: { handleTranslate() { const textToTranslate = 'Hello, world!'; this.translatedText = translateText(textToTranslate); } }, data() { return { translatedText: '' }; } }; </script> ``` 记得在实际部署到App前,确保处理好网络请求,因为`translate.js`通常是在线获取翻译数据的。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值