【问题标题】:TypeError: Cannot find default value for objectTypeError:找不到对象的默认值
【发布时间】:2020-02-06 09:05:50
【问题描述】:

我有一个谷歌广告脚本失败并出现以下错误。

TypeError: Cannot find default value for object.

它似乎相当神秘,所以我不确定它指的是什么。

这是它失败的那一行:

var adOperation = adGroup.newAd().expandedTextAdBuilder()
  .newAd()
  .expandedTextAdBuilder()
  .withHeadline1(expandedTextAd.getHeadline1())
  .withHeadline2(expandedTextAd.getHeadline2())
  .withDescription1(expandedTextAd.getDescription1())
  .withPath1(expandedTextAd.getPath1())
  .withPath2(expandedTextAd.getPath2())
  .withTrackingTemplate(expandedTextAd.getTrackingTemplate())
  .withFinalUrl(expandedTextAd.getFinalUrl())
  .build(adGroup);

我已检查 adGroup 是否已设置,但不知道从哪里开始。

更新:

我将行拆分为每个方法调用,失败的行是第 1 行

> var adOperation = adGroup
.newAd()
.expandedTextAdBuilder()

【问题讨论】:

  • 如果没有完整的代码,将很难破译这个。 adGroup本身没有内置对象,所以需要通过selector来获取
  • 不幸的是,我无法发布完整的代码,因为它对业务敏感。奇怪的是,我可以在此错误发生之前记录完整的 adGroup 对象。您知道可能发生此错误的实例吗?我不记得以前有过这种情况,网上的例子也很少。
  • 当前信息太少,无法提供正确的指针。我建议至少提供创建和更改 adGroup 变量的代码。也许尝试在屏蔽业务敏感部分的同时发布您的代码。

标签: google-apps-script google-ads-api


【解决方案1】:

几个小时后,我通过从 .build() 方法中删除 adGroup 来解决此问题。 build() 不带任何参数,我不确定我为什么要传递它。还是一个很奇怪的错误。

var adOperation = adGroup
  .newAd()
  .expandedTextAdBuilder()
  .withHeadline1(expandedTextAd.getHeadline1())
  .withHeadline2(expandedTextAd.getHeadline2())
  .withDescription1(expandedTextAd.getDescription1())
  .withPath1(expandedTextAd.getPath1())
  .withPath2(expandedTextAd.getPath2())
  .withTrackingTemplate(expandedTextAd.getTrackingTemplate())
  .withFinalUrl(expandedTextAd.getFinalUrl())
  .build();

我会建议任何人尝试解决任何类似于解开方法调用的链接并逐行调试每个调用的问题。

【讨论】:

    猜你喜欢
    • 2013-01-11
    • 1970-01-01
    • 2016-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-18
    • 2020-12-07
    • 1970-01-01
    相关资源
    最近更新 更多