0

总的来说,我在网络方面真的很糟糕,但似乎我要研究 AMP :x

虽然我设法使用 amp-analytics 在内部发送数据,但我也在尝试显示“隐私弹出窗口”并让用户选择将它们转发到我们的分析工具。

我实际上尝试了几件事,使用 amp-state 并尝试绑定以通过绑定发送数据。试图覆盖在我的 amp-analytics 中声明的变量(使用 data-vars-name 一次性使用,但不设置任何值)

  <amp-analytics id="testlytics">
    <script type="application/json">
    {
      "vars": {
        "container_id": "2",
        "page_name" : "amp_homepage",
        "user_id" : "",
        "order_id" : "",
        "privacy" : "",
      },

      "requests": {
        "baseURL": "https://baseurl.com/${container_id}/?privacy=${privacy}",

        "pageTrack": "${baseURL}&page_name=${page_name}&user_id=${user_id}&order_id=${order_id}",

        "eventTrack": "${pageTrack}&scrollY=${scrollTop}&scrollX=${scrollLeft}&height=${availableScreenHeight}&width=${availableScreenWidth}&scrollBoundV=${verticalScrollBoundary}&scrollBoundH=${horizontalScrollBoundary}&eventLabel=${eventlabel}"
      },
      "triggers": {
        "pageview": {
          "on": "visible",
          "request": "pageTrack",
          "vars": {
            "type": "page"
          }
        },
        "clickPings": {
          "selector": ".events",
          "on": "click",
          "request": "eventTrack",
          "vars": {
            "type": "event"
          }
        }
      }
    }
</script>
</amp-analytics>

我的测试包括:

  <span id="event-test" class="events" data-vars-container_id="3311">
    Click here to generate an event
  </span>

  <span id="event-test" class="events">
    Click here to generate an event that doesn't override container_id
  </span>

哪种适用于按钮单击等事件,但不能用于为整个导航设置变量等等。

我也尝试过使用:

<amp-state id="privacy_state">
  <script type="application/json">
    {
      "tag_list": "12"
    }
  </script>
</amp-state>

<amp-user-notification 
  id="my-notification"
  layout="nodisplay">
  This is an amp-user-notification. It uses local storage to store the dismissed state.
    <button on="tap:AMP.setState({tag_list: '3'})">Change privacy state</button>
    <button on="tap:my-notification.dismiss">I accept</button>
</amp-user-notification>

但无论如何,我似乎无法在我的 amp-analytics 中使用 amp-state 中的内容。

有谁知道做到这一点的最佳方法?我应该在本地存储中使用我的弹出窗口写,然后如何读取它并将其发送到我的服务器?

感谢您的帮助 !:)

4

0 回答 0