Verwendung von Google Optimize in einem Plugin-Initialisierer JS

Hallo zusammen, ich habe ein Problem, wenn ich v4_gtag für Analytics anstelle von v3_analytics aktiviere. Ich benötige GTag für Google Optimize, bekomme aber ständig den Fehler, dass gtag keine Funktion ist.

Ich rufe die gtag-Funktion innerhalb einer Plugin-JS-Datei auf. Kann mir jemand mehr Kontext dazu geben, warum das nicht funktioniert?

Hier ist ein Beispiel dafür, wie ich den Code geschrieben habe. Vielen Dank im Voraus.

export default {
  name: 'common-init',
  after: 'inject-objects',
  initialize() {
    gtag('event', 'optimize.callback', {
      name: settings.optimize_js_experiment_id,
      callback: (variation) => {
       console.log(`Variation: ${variation}`)
      }
    })
  }
}

Wo ist Ihre gtag-Funktion definiert?

Ich würde annehmen, dass dies als Teil von Discourse definiert wird, wenn ich gtag in den Einstellungen aktiviere.

Sie müssen es trotzdem importieren, auch wenn es bereits irgendwo definiert ist.

Muss ich das GTag-Import-Skript also immer noch manuell irgendwo hinzufügen?

Es scheint, dass gtag zur Laufzeit unter dem window-Objekt definiert ist, sodass Sie es nicht erneut importieren müssen, sondern es zur Laufzeit wie window.gtag aufrufen können.
https://github.com/discourse/discourse/blob/master/app/assets/javascripts/google-universal-analytics-v4.js

Ich konnte die Funktion beim Start definieren, und ich vermute, dass Discourse sie beim Laden neu definiert, was derzeit gut funktioniert. Jetzt habe ich jedoch ein anderes Problem: Wenn ich meinen GA-Tracking-Code in den GA Universal-Tracking-Code einfüge, wird weiterhin analytics.js eingebunden, obwohl ich v4_gtag verwende. Ist dieses Verhalten zu erwarten? Wird das nicht zu einem Problem mit doppelten Events führen?