1.期望的效果是这样子的(这也是最终结果):

2.开始是用json假数据,开始没考虑null的问题,导致在判断传值处,判断有误。

导致在对接接口时,凌乱了,后来修改了下变成后面图C的逻辑,json数据变成了图a酱紫的:

3.ajax请求的数据是长这样的,一串串,

4.因为我们判断已经写好,就需要将请求的数据,改写成图a中的样式

5.实例化值,调数字组件。

逻辑叙述:

主要逻辑分析(旧):

1》.将new出来的值,要一层一层的放到最外面的全局变量中,以便,在再次获取的数据上可以直接调函数
2》.如果是第一次传值,那就需要实例化组件,二次以后就是直接调里面的函数
3》.在实例化组件或者是调函数之前,我们必须要做的就是,看数据类型(typeof)是否是undefined,是的话就显示为未标识
4》.在数据为空时,需要做的判断,可以先判断数据,也可以先看执行是第几次,在里面在进行数据的判断

新逻辑:整体思想不变,就是判断数据是否是null,将其加入到了组件中(3,4条不需要了)

发表后,又优化了代码,要用对象的方式,进行存储,,这里是更改后的,也是最终的

6.组件中的逻辑

逻辑分析:
* 1.第一次是this.saveData=-1,所以走if里面,在结尾处,将传进来的值赋值给了this.saveData(不会在等于-1),保存了上次的值,
* 所以第二次进来就直接走的是else中
* 2.无论是走if还是else时,里面都会对值进行是否是空值进行判断
* 3.执行第一次时,也就是if里面。如果传入的opt是空值,改变属性text:为汉字"未标识",并设置汉字的样式,改完后,将opt赋值为0。
* 否则就从0直接到 传进来的opt值
* 4.执行第二次(else)时,也要先判断值是否为空,如果为空,改变属性text:为汉字"未标识",并设置汉字的样式,改完后,将opt赋值为0。
* 否则,在看值是不是和上次保存的值相等,如果相等,从0开始变化到传入的值,如果不相等,那就从上一个值变化到新的传入的值。
* else在结尾处,将传进来的值赋值给了this.saveData,这样就保存了上次的值
*
代码在数字组件中(该组件不带单位)

zrender笔记----(数字Number组件)出现的问题和解决办法的更多相关文章

  1. C#调用COM组件遇到的问题及解决办法

    1.无法嵌入互操作类型"xxx",请改用适用的接口. 解决办法: - 将所引用的程序集的[嵌入互操作类型]属性设置为[False]. 2.System.Runtime.Intero ...

  2. vue -vantUI tab切换时 list组件不触发load事件解决办法

    最近由于公司项目需要,用vue写了几个简单的页面.用到了vantUI List 列表 瀑布流滚动加载,用于控制长列表的展示 当列表即将滚动到底部时,会触发事件并加载更多列表项. (页面加载完成后默认会 ...

  3. Oracle 学习笔记3:新建数据库没有scott用户解决办法

    新建一个数据库,若选择Oracle组件时,没有选择实例方案,完成后进行口令管理,默认列表中是找不到scott用户解锁的.若要解锁scott用户,可以进行如下操作: 使用system或者sys连接数据库 ...

  4. 使用composer下拉组件失败,出现killed解决办法

    做项目时下载composer组件,出现killed提示,如图 一般是因为内存太小,将虚拟机内存设置大一点即可,在虚拟机关机的时候设置 下载成功

  5. nginx笔记4-负载均衡带来的问题以及解决办法

    接着笔记3,将笔记三的改造一下,现在分别启动两个Tomcat,在页面获取session.如图所示: tomcat2的session: tomcat1的session: 根据上图发现,每个tomcat取 ...

  6. NO17--vue父子组件间单向数据流的解决办法

    在上一篇中讲解了父子组件之间是如何传值的,如果子组件需要改变传过来的数据供自己使用,或者想在子组件中改变传过来的数据并同步到父组件,那么直接改肯定是不行的,如果你这么做了,Vue 会在控制台给出警告. ...

  7. 云时代架构阅读笔记九——web应用存在的问题及解决办法

    web应用通常存在的10大安全问题 1.SQL注入 拼接的SQL字符串改变了设计者原来的意图,执行了如泄露.改变数据等操作,甚至控制数据库服务器, SQL Injection与Command Inje ...

  8. iOS开发笔记:编译时出现的错误和解决办法

    1."std::ios_base::Init::~Init()", referenced from 出现这样的编译问题,是需要再加进libstdc++.dylib和libstdc+ ...

  9. vue引入fastclick设置输入框type="number"报错Failed to execute 'setSelectionRange' on 'HTMLInputElement': The input element's type ('number') does not support selection.的解决办法

    将输入框type设为text,通过正则验证输入的值

随机推荐

  1. 修改jupyter notebook默认路径,亲测

    anaconda环境 任务栏中找到anaconda/jupyter notebook,鼠标右键属性 点击确认即可.

  2. SQL Server中的扩展事件学习系列

    SQL Server 扩展事件(Extented Events)从入门到进阶(1)——从SQL Trace到Extented Events SQL Server 扩展事件(Extented Event ...

  3. PostgreSQL设计之初的大量论文

    引自:https://www.docs4dev.com/docs/zh/postgre-sql/11.2/reference/biblio.html#STON86 该网站是一个PostgreSQL手册 ...

  4. 打印 PRINT

    打印 PRINT 字符串和数值类型 可以直接输出. print(1) #out:1 print('a') #out:a 变量 无论什么类型,数值,字符串,列表,字典...都可以直接输出 n = 1 s ...

  5. JS事件绑定的两种形式

    第一种: obj.on*=function(){} var btn=document.getElementById('myBtn'); btn.onclick=function(){ alert(1) ...

  6. CDQ分治总结

    \(CDQ\)分治小结 标签:知识点总结 阅读体验:https://zybuluo.com/Junlier/note/1326395 身为一个资深菜鸡 \(CDQ\)分治一开始学了一晚上,后来某一天又 ...

  7. tensorflow学习笔记一----------tensorflow安装

    2016年11月30日,tensorflow(https://www.tensorflow.org/)更新了0.12版本,这标志着我们终于可以在windows下使用tensorflow了(但是还是推荐 ...

  8. 洛谷 - P1346 - 电车 - Dijkstra/01BFS

    https://www.luogu.org/problem/P1346 使用最短路之前居然忘记清空了. #include<bits/stdc++.h> using namespace st ...

  9. springboot 配置

    springboot 配置文件中属性变量引用方式@@解析 这种属性应用方式是field_name=@field_value@. 两个@符号是springboot为替代${}属性占位符产生,原因是${} ...

  10. 使用Eclipse-Maven-git做Java开发(3)--Eclipse的安装和配

    使用Eclipse-Maven-git做Java开发(3)--Eclipse的安装和配 https://my.oschina.net/songxinqiang/blog/474530