En mi aplicación Next, estoy usando react-gtm-module con GTM ID. Ahora quiero un controlador de eventos en el botón para que, cuando se haga clic en él, se agregue un evento a la capa de datos del Administrador de etiquetas de Google.
export const MyButton = () => ( <button onClick={() => { window.dataLayer.push({ event: "some-event" }); }} > Click Me! </button> );Pero me está dando el error " Error de tipo: la propiedad 'capa de datos' no existe en el tipo 'Ventana y tipo de globalThis'".
En _app.tsx he inicializado GTM con el siguiente código:
import type { AppProps } from "next/app"; import { useEffect } from "react"; import TagManager from "react-gtm-module"; function MyApp({ Component, pageProps }: AppProps) { useEffect(() => { TagManager.initialize({ gtmId: "GTM-XXXXXXX", events: { sendUserInfo: "userInfo", }, dataLayer: { userId: "001", userProject: "project", }, }); }, []); return <Component {...pageProps} />; } export default MyApp;