0

鉴于我有以下脚本,我如何portVal在对象中附加/使用变量,即"investment_value": portVal

  var portVal = 100000
  setTimeout(invalidForm, 2000);
    function invalidForm() {
      utag.link({
          "event_name": "invalid form submission",
          "investment_value": portVal,
          "page_title": "Calculator - Invalid form submission",
          "error_message": "Mandatory fields",
          "language":   "en",
          "country":    "Test",
          "segment":    "Test",
          "sub_segment":"Test"
      });
  }

我该怎么做console.log那个对象investment_value

4

1 回答 1

0

你有一个tealium标签。

Tealium是一种TMS。这改变了事情。

Tealium 有自己的变量概念。数据层变量。window.utag_data 是包含 Tealium 的 DL 变量的对象。因此,如果 portVal 是通过 Tealium ui 声明和设置的,您应该像这样访问它:window.utag_data.portVal

但所有这些都可以在控制台中轻松检查。无需在本地控制台调试之前部署 Tealium 的代码并尝试对其进行调试。

TMS 还有另一个问题。时机。让我们假设 portVal 只是一个全局变量,因此,window.portVal。但它可能会在页面加载/渲染过程中稍后声明,而不是从 Tealium 访问它。这可以(并且应该)通过断点进行调试,但实际上,您可以使用类似 typeof portVal 而不是 portVal 之类的东西在 tealium 对象中调试它,以防断点令人生畏。

于 2021-10-06T07:32:58.463 回答