未捕获错误:google表列的类型无效
Uncaught error: Invalid type for google table column
我最近开始使用谷歌可视化,因为它很简单。但是,在我最近的项目中执行时,我似乎遇到了一些麻烦。显示的程序用于从JSON对象中提取数据,并利用它在google表中显示数据。现在,为了保持简单性,我只在json对象中提供了一个条目。现在来谈谈问题第一张表曾经运行良好一段时间,最近完全停止出现。。这两个表似乎都没有出现或显示。我在控制台中得到的错误如下-
未捕获错误:列"sitecode"的类型String无效。在文件中—http://www.google.com/uds/api/visualization/1.0/abbdd6ab2d343a51d49841bf93d022fb/format+en,default+en,ui+en,table+en.I.js
另一方面,第二个表没有抛出错误,也没有显示。此外,我正在制作表格,以便只有网站代码的三个最新日期才会显示在表格中。但我想我可能做错了什么。因为它从一开始就不起作用。现在我似乎搞不懂了。有人能给我指右边吗方向谢谢
代码-
google.load('visualization', '1', {'packages':['table']});
var SiteData = SiteInfo();
var map;
function initialize()
{
map = new google.maps.Map(document.getElementById('map_canvas'), {
center: new google.maps.LatLng(55.7200,12.5700),
zoom: 2,
mapTypeControl: false,
streetViewControl: false,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
for(m=0;m<SiteData.length;m++)
{
var image;
if(SiteData[m].Connection=="Sitetype1")
{
image = "http://labs.google.com/ridefinder/images/mm_20_white.png";
}
else if(SiteData[m].Connection=="sitetype2")
{
image = "http://labs.google.com/ridefinder/images/mm_20_black.png";
}
else
{
image = "http://labs.google.com/ridefinder/images/mm_20_purple.png";
}
setmarkers(map,SiteData[m].Latitude,SiteData[m].Longitude,image)
}
}
function setmarkers(map,lat,lon,image)
{
var latlon = new google.maps.LatLng(lat,lon);
var marker = new google.maps.Marker({map:map,position:latlon,icon:image});
}
function Changesite(sc)
{
var mpls = Outage();
for(var i=0,numSite = SiteData.length;i<numSite;i++)
{
if(SiteData[i].Sitecode==sc)
{
var data = new google.visualization.DataTable();
data.addColumn('String', 'sitecode');
data.addColumn('String', SiteData[i].Sitecode);
data.addRows([
['Connection', SiteData[i].Connection],
['Bandwidth', SiteData[i].Bandwidth],
['Address', SiteData[i].Address],
['Country', SiteData[i].Country],
]);
var chart = new google.visualization.Table
(document.getElementById('chart'));
var options = {
'title': SiteData[i].Sitecode+ ' ',
};
chart.draw(data, options);
}
}
var data1 = new google.visualization.DataTable();
data1.addColumn('String','Country');
data1.addColumn('String','Sitecode');
data1.addColumn('String','Outages');
data1.addColumn('Date','Date');
var c=0,k=0;
mpls.sort(function(a,b){
var c = new Date(a.date);
var d = new Date(b.date);
return c-d;
});
while(k!=3&&c<mpls.length)
{
if(mpls[c].SITECODE==sc)
{
data1.addRows(1);
data1.setCell(k,0,mpls[i].COUNTRY);
data1.setCell(k,1,mpls[i].SITECODE);
data1.setCell(k,2,mpls[i].MPLSOutages);
data1.setCell(k,3,mpls[i].DATE);
k++;
}
c++;
}
var table1 = new google.visualization.Table(document.getElementById
('visualization'));
table1.draw(data1);
}
function SiteInfo()
{
var Siteinfo =
[{"Connection":"Direct","Sitecode":"site1","Address":"Usa","Bandwidth":"6
Mbps","Country":"USA","Latency":"44 ms","Latitude":44,"Longitude":34,"Item
Type":"Item"}];
return Siteinfo();
}
function Outage()
{
var Outage_Data= [{"COUNTRY":"USA ","SITECODE":"site1","Outage
":"Issue1","DATE ":"4/1/2015"}];
return Outage_Data;
}
您应该更改行
data.addColumn('String', 'sitecode');
至
data.addColumn('string', 'sitecode');
("string"中的非大写"s"),当然这适用于所有添加的列。
Javascript区分大小写。
我无意中更改了费用行数据的格式。尽管我输入了数字,但我还是将其格式化为文本。图表不会读取文本,除非它们被用作标签。突出显示不起作用的行,并将其格式化为数字或自动!数据现在"有效",可以在图表中使用。
相关文章:
- 警告:失败的propType:类型为“array”的无效prop应为React的“object”
- ReactJS - 元素类型无效错误
- Webgl readPixels() 无效操作:格式/类型组合无效
- 未捕获错误:不变冲突:元素类型无效:应为字符串
- 未捕获的不变冲突:元素类型无效(react、webpack、循环导入)
- 类型错误: 无效的“in”操作数 obj
- 如何使用node.js修复Twilio中无效的内容类型标头
- jQuery image丢弃无效的图像类型,并显示一条无效的消息而不是警告框
- 无效的“in”操作数 obj JQUERY - 尝试从 JSON 获取数据时出现类型错误
- 反应.js - “不变冲突:元素类型无效:预期字符串”简单按钮
- 未捕获的错误:不变冲突:元素类型无效:需要字符串(对于内置组件)或类/函数,但得到:对象
- Getting Invariant违规:使用createBrowserHistory时元素类型无效react-route
- react router问题未捕获错误:不变冲突:元素类型无效:应为字符串(用于内置组件)
- React Redux错误提供给“Provider”的“object”类型的道具“children”无效
- 轨道-“;对象值“;是属性“”的无效值;对象“;具有类型“;参考文献“;
- 元素类型无效:期望是字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义
- 未捕获错误:google表列的类型无效
- Google arrayToDataTable-行0的行类型无效
- 元素类型无效,应为未定义的字符串
- 元素类型无效:期望是字符串或类/函数,但得到的是:对象