我就废话不多说了,大家还是直接看代码吧~

this.$nextTick(() => {

$("select[name='ddlCostCenter']").select2({

language: "zh-CN"

});

});

补充知识:vue+Echarts动态数据已经赋值,但是无法渲染页面的问题

最近用vue+Echarts想做一个饼状统计图,但是数据明明已经绑定完毕,但是页面渲染一直没有效果,最终才发现问题所在,自己还是个新手,主要对vue还不是很熟悉。废话不说,接下来看我的代码:

正常的给个div的大小

接下来是option部分:

echarts1_option:{

backgroundColor: '#45515a', //背景颜色

//标题

title: {

text: '订单中保险公司所占的比例',

subtext: '饼图示例',

left: 'center',

top: 20,

textStyle: {

color: '#ccc',

fontStyle: 'italic'//标题字体

}

},

//弹窗,响应鼠标指向,显示具体细节

tooltip : {

trigger: 'item',//以具体项目触发弹窗

formatter: "{a}
{b} : {c} ({d}%)",

},

//图例,选择要显示的项目

legend:{

orient:'vertical',

left:'left',

textStyle:{

color:'#c8c8d0'

},

data:['安心','安盛天平','中华联合保险','中国太平洋保险','中国人保财险','平安车险'] //注意要和数据的name相对应

},

//工具箱

toolbox:{

show:true,//显示工具箱

feature:{

dataView:{show:true}, //以文字形式显示数据

restore:{show:true}, //还原

//dataZoom:{show:true}, //区域缩放

saveAsImage:{show:true}, //保存图片

//magicType:{type:['line','bar']}//动态数据切换,数据显示可以在该规定内容中切换显示方式,

}

},

/*//视觉映射组件,将数据映射到视觉元素上

visualMap: {

show: false,

min: 1,

max: 2,

dimension: 0, //选取数据的维度,如人数据:[身高,体重],则1代表将体重进行映射,默认值为数组的最后一位

// seriesIndex: 4, //选取数据集合中的哪个数组,如{一班},{二班},默认选取data中的所有数据集

inRange: {

//选定了要映射的对象,用inRange详细写要渲染的具体细节,[x,y]中x指最小值对应的量(亮度,饱和度等),y指最大值对应的量,其余的按各自value线性渲染

color:['red'],

colorLightness: [0,1],

colorSaturation:[0,1]

}

},*/

//数据

series : [

{

name: '成交数量',

type: 'pie',

radius: '55%',

center: ['50%', '50%'],

data:[

].sort(function (a, b) {

return a.value - b.value;

}),

roseType: 'radius',//角度和半径展现百分比,'area'只用半径展现

label: { //饼图图形的文本标签

normal: { //下同,normal指在普通情况下样式,而非高亮时样式

textStyle: {

color: 'rgba(255, 255, 255, 0.3)'

}

}

},

labelLine: { //引导线样式

normal: {

lineStyle: {

color: 'rgba(255, 255, 255, 0.3)'

},

smooth: 0.5, //0-1,越大越平滑弯曲

length: 10, //从块到文字的第一段长

length2: 20 //拐弯到文字的段长

}

},

itemStyle: { //图例样式

normal: {

//color: '#97413c',

shadowBlur: 50,//阴影模糊程度

shadowColor: 'rgba(0, 0, 0, 0.5)',//阴影颜色,一般黑

}

},

animationType: 'scale', //初始动画效果,scale是缩放,expansion是展开

animationEasing: 'elasticOut', //初始动画缓动效果

animationDelay: function (idx) { //数据更新动画时长,idx限定了每个数据块从无到有的速度

return Math.random() * 200;

}

}

],

color: ['#97858c','pink','green','yellow','orange','#97813c'],

},

接下来看init代码

init(){

// 基于准备好的dom,初始化echarts实例

let myChart = echarts.init(document.getElementById('echartss'))

// 绘制图表,this.echarts1_option是数据

myChart.setOption(this.echarts1_option,true)

},

然后是给动态数据赋值代码(从后台接口取得的数据)

drawline() {

// 数据初始化

API.account.getAccount().then(({data}) => {

if (data && data.code == 0) {

this.echarts1_option.series[0].data=data.data.list;

} else {

this.$Message.error(data.msg);

}

}).catch((data) => {

this.$Message.error('连接失败,请检查网络!');

});

},

到目前为止,页面的结果是:

页面完全没有效果:

在加上下面代码后:

//数据自动刷新,必然需要一个监听机制告诉Echarts重新设置数据

watch: {

//观察option的变化

echarts1_option: {

handler(newVal, oldVal) {

if (this.myChart) {

if (newVal) {

this.myChart.setOption(newVal);

} else {

this.myChart.setOption(oldVal);

}

} else {

this.init();

}

},

deep: true //对象内部属性的监听,关键。

}

},

我们再看看运行结果:

数据虽然刷新了,但是我们的Echart's组件却不知道,必须有个watch过程。

以上这篇解决vue页面渲染但dom没渲染的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

vue 组件第一次不渲染问题_解决vue页面渲染但dom没渲染的操作相关推荐

  1. vue 监听map数组变化_解决vue无法侦听数组及对象属性的变化问题

    一.数组 1.可以监听到的情况 如push.splice.=赋值(array=[1,2,3]) 2.无法监听到的情况 使用下标修改某个元素(这种比较常见) array[index] = 1 objec ...

  2. vue移动端点击事件延迟_解决Vue 界面在苹果手机上滑动点击事件等卡顿问题_莺语_前端开发者...

    用 (1).滑动页面卡顿, (2).点击事件响应缓慢,百度才发现在苹果手机上有300ms的延迟. 一.滑动页面卡顿 //页面布局 页面内容 在对应的组件的最外层div上加上这样的样式: .conten ...

  3. vue动态生成下拉框_解决vue动态下拉菜单 有数据未反应的问题

    问题出现在当时后台数据会返回到data中但是没有出现下拉菜单,查询资料 发现 Vue的this理解有误 jsp 下拉菜单 {{item.plantModelName}} JS new Vue({ el ...

  4. vue上线后图片不显示_解决Vue打包后访问图片/图标不显示的问题

    大家可否遇到过 npm run build打包后,项目在线上运行时,资源文件 (图片.图标)不显示 的问题, 接下来,我给大家分享一下我的解决方案~ 1.检查打包后dist中的css文件 打开此文件后 ...

  5. vue样式中背景图片路径_解决vue打包css文件中背景图片的路径问题

    vue-cli写完的静态页面我们在node环境中引入没有问题,但是打包后放在Apache环境下,路径却有问题了 如一个简单css语句 .welcome { width: 420px; height: ...

  6. vue数据改变渲染问题_解决Vue中页面成功渲染数据undefined的问题

    前言 这个标题不太好取. 本文需要下面的知识:https://zhuanlan.zhihu.com/p/260811233​zhuanlan.zhihu.com 问题描述 我最近的一个功能需求是通过a ...

  7. this指向-作用域、作用域链-预解析 变量提升-Vue组件传值 父子 子父 非父子-Vue数据双向绑定原理

    目录 this指向 作用域.作用域链 预解析 变量提升 Vue组件传值 父子 子父 非父子 Vue数据双向绑定原理 1.this指向 函数的this指向 看调用.不看声明 (1)普通函数调用 ①函数名 ...

  8. elementui 样式渲染的慢_解决vue+elementui项目打包后样式变化问题

    博主刚刚解决了index.html空白问题,刚打开项目页面又发现了样式出现了大问题,样式与开发版本有很大不同,有些样式没有生效.利用搜索引擎, 找到了问题所在以及解决办法: main.js中的引入顺序 ...

  9. dom渲染完毕再渲染数据_在vue组件中,异步手动渲染dom

    在业务中,页面会动态的渲染组件,组件中会根据数据,去特殊处理渲染dom元素,当遇到需要异步的去渲染时,会出现异步的问题无法正常显示.如下,重新生成一个组件进行渲染. 使用基础 Vue 构造器,创建一个 ...

最新文章

  1. 让你完全理解base64是怎么回事
  2. Grandma Capa Knits a Scarf 模拟,字符串
  3. VTK:PolyData之ImplicitPolyDataDistance
  4. python笔试知识点_python知识点及面试面试大集合
  5. OpenJPA:内存泄漏案例研究
  6. unity描边发光shader_unity shader实例#1 轮廓渲染-描边
  7. java list 取两条_java list集合中有多条数据随机两条一组
  8. Map集合常用方法总结
  9. php++erp,php云ERP进销存V8标准版
  10. 关于MUI一个很实用的前端框架
  11. 计算机软考网络工程师证书,软考网络工程师证书有效期是多久?
  12. CS大作业--程序人生--Hello‘s P2P
  13. 软件项目管理 7.3.敏捷历时估算
  14. 如何有效提高公众号文章阅读量
  15. 淘宝Tmall,1688,拼多多API商品详情接口
  16. dellr420部署os_dell r720服务器OS部署
  17. 机器学习中的归纳偏置
  18. html5 show 案例
  19. IDEA打包jar包,以及exe应用程序。
  20. 远程办公常态化,网络安全迫在眉睫,“零信任安全”的风口到了吗?

热门文章

  1. 硕士生预答辩中存在的共性问题
  2. 《计算机视觉工程师养成计划 》·数字图像处理·数字图像特征·链码
  3. mysql 用sql语句创建数据库和表
  4. win10运行安卓模拟器蓝屏崩溃
  5. 天玑9000+和骁龙8gen1+哪个性能更强 两者配置对比
  6. 使用腾讯轻量云搭建个人邮箱系统
  7. 软件造价评估最新模板免费下载(基于2022年度行业基准数据)
  8. 最大团问题(使用递归和非递归两种方法)
  9. 解决 nginx 反向代理时的 upstream timeout 问题
  10. C# 正则计算中文,数字,英文字数统计方法