简单的网站更新 关键词优化 关键词互联,seo单页面wordpress,用宝塔给远程网站做备份,wordpress登入不进去我在js文件中开了个定时器#xff0c;每1s从后端获取数据并解析#xff0c;然后用异步方法就渲染不出来#xff0c;改成同步就可以了。 这个解决方法来自于这篇文章#xff0c;我出的问题和他一样#xff1a;关于ajax中readyState的值一直为1的问题 这里将ajax参数修改为f…我在js文件中开了个定时器每1s从后端获取数据并解析然后用异步方法就渲染不出来改成同步就可以了。 这个解决方法来自于这篇文章我出的问题和他一样关于ajax中readyState的值一直为1的问题 这里将ajax参数修改为false即可
xmlhttp.open(GET,http://www.test.com/getData.php?q,false);但是还有个问题更改数据后还需要更新echarts组件的配置否则页面不会动态刷新还是静态的。 根据mychart组件使用的三部曲
实例化对象指定配置项和数据把配置项给实例对象 我们在第一次setOption之后开一个定时器在内部更新数据然后对于option的需要更新的参数重新赋值然后再次调用setoption这样数据发生改变后我们的组件也会动态刷新了。
// 3. 把配置项给实例对象myChart.setOption(option);setInterval(function() {// 读取数据库文件,更新配置var obj Myupdate();if (obj ! null) {option.xAxis.data obj.mytype;option.series.data obj.mydata;myChart.setOption(option,true);}}, 500);这里执行号Myupdate()函数之后obj的mytype和mydata的值都是正确的但是在网页端debug发现赋值之后查看option的xAxis的data还是没有被赋值经过翻阅相关博客以及再次查看网页端代码发现是这个问题:
封装好的数组应该赋给
option.xAxis[0].data obj.mytype;
option.series[0].data obj.mydata;因为这两个配置都是数组…绝了
update函数内容如下
function Myupdate() {var xmlhttpnew XMLHttpRequest();var mytype new Array();var mydata new Array();xmlhttp.onreadystatechangefunction(){if (xmlhttp.readyState 4 xmlhttp.status 200){var txt xmlhttp.responseText;// 解析for (var i 0; i txt.length; i) {if (txt[i] #) {var m_type ;while(i 1 txt.length txt[i1] ! $) {i;m_type txt[i];} mytype.push(m_type);} else if (txt[i] $) {var m_data ;while(i 1 txt.length txt[i1] ! ) {i;m_data txt[i];} mydata.push(Number(m_data));} else {i;}} // QualityIndexType mytype;// QualityIndexData mydata;}}xmlhttp.open(GET,http://www.test.com/getData.php?q,false);xmlhttp.send();return {mytype,mydata};
}