当我尝试在addColumn
中指定模式时,它不显示。我做错了什么?
data.addColumn({
type: 'date',
label: 'Date',
pattern: "EE dd MMM yyyy"
});
data.addRow([new Date(2016, 02, 05)])
显示的值为
Mar 5, 2016
,这是默认格式,而我希望Sat 05 Mar 2016
如addColumn({pattern: "EE dd MMM yyyy"})
中所指定请参见https://jsfiddle.net/qpq3kvhr/3,其中
number
也存在相同的问题。我在Google上搜索了
addColumn(pattern)
的有效示例,但没有找到它。 最佳答案
addColumn documententation指出:
addColumn(type, opt_label, opt_id)
要么
addColumn(description_object)
第二签名具有一个具有以下成员的单个对象参数:
...
pattern
-[可选,字符串]一个数字(或日期)格式的字符串,指定如何显示列值。
但这是错误的,或者至少是令人困惑的。 Constructor's JavaScript Literal data parameter的文档中对此有不同的解释。
cols
属性
cols
是一个对象数组,描述每个列的ID和类型。
每个属性都是具有以下属性的对象
(区分大小写):
...
pattern
[可选]数据源使用的字符串模式
格式化数字,日期或时间列值。供参考
只要;您可能不需要读取模式,并且它不是
必须存在。 Google Visualization客户端不使用此
值(它读取单元格的格式化值)。如果数据表具有
来自数据源以响应带有format子句的查询,
您在该子句中指定的模式可能会在
这个值。
结论:您不能在dataTable或addColumn构造函数中指定自动应用的格式模式。而是将formatter应用于列。
var formatter = new google.visualization.DateFormat({pattern: "EE dd MMM yyyy"});
formatter.format(data, 0);
小提琴https://jsfiddle.net/qpq3kvhr/6/