ChartOptions类get方法调用报错TypeError,求排查原因
问题分析与解决
这个问题的核心原因很明确:你通过getOptions()获取到的并不是ChartOptions类的实例对象,而是一个普通的JavaScript键值对对象,自然没有官方文档里提到的get()方法。
为什么会这样?
Google Apps Script的图表服务在返回配置选项时,会将ChartOptions实例序列化(转换)成普通的JS对象。从你打印的日志Object { title: "average", width: 1200, ... }也能看出来,这就是一个标准的JS对象,而非带有类方法的实例。
解决办法
你有两种方式来获取需要的配置值:
- 直接通过属性访问(最简单直接):
对于普通JS对象,直接用点语法或者方括号语法就能拿到值:var title = allChartOptions.title; // 或者 var title = allChartOptions['title']; - 如果需要使用
ChartOptions类的方法:
如果你确实需要依赖ChartOptions类的方法(比如get()、set()),那应该从创建ChartOptions实例开始操作,而不是复用getOptions()返回的对象:// 创建ChartOptions实例 var chartOptions = Charts.newChartOptions(); // 设置选项 chartOptions.setTitle("average") .setWidth(1200) .setHeight(500); // 此时可以调用get()方法 var title = chartOptions.get('title');
内容的提问来源于stack exchange,提问作者N. Her
相关产品推荐
相关产品推荐

