You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

出现Cannot redefine property: googletag运行时错误,求解决方案

解决"Cannot redefine property: googletag"错误的方案

这个错误的核心原因是代码重复尝试通过Object.defineProperty定义window.googletag属性,而该属性已被定义且默认处于不可重新配置状态。以下是具体解决方法:

  • 排查重复加载逻辑
    检查页面代码,确保Google Ad Manager的googletag.js脚本只被引入一次,同时确认自定义代码中没有重复执行初始化googletag的逻辑。

  • 提前判断属性存在性
    在初始化googletag前先检查该属性是否已存在,避免重复定义:

    if (!window.googletag) {
      // 执行googletag初始化逻辑,比如加载脚本或初始化配置
      window.googletag = window.googletag || {};
    }
    
  • 配置可重新定义的属性(自定义定义场景)
    如果是你自己的代码使用Object.defineProperty定义googletag,第一次定义时需设置configurable: true,允许后续修改:

    Object.defineProperty(window, 'googletag', {
      value: {},
      writable: true,
      enumerable: true,
      configurable: true // 允许重新配置该属性
    });
    
  • 动态条件加载脚本
    若通过动态方式加载googletag.js,添加判断逻辑确保仅加载一次:

    function loadGoogletag() {
      if (window.googletag) return;
      const script = document.createElement('script');
      script.src = 'https://securepubads.g.doubleclick.net/tag/js/gpt.js';
      script.async = true;
      document.head.appendChild(script);
    }
    loadGoogletag();
    

内容的提问来源于stack exchange,提问作者Nafees Kausar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 16:33:10