Задать вопрос
@g23rom

Как получить данные пользователя в next в telegrm app?

В общем изучаю next js и параллельно пишу приложение для телеграмма

В общем мне требуется вытащить данные телеграмма и потом их дальше использовать!
Вот две основные страницы!
<b>код layout.jsx</b>

import Script from "next/script";
import "./globals.css";

export default function RootLayout({ children }) {
  return (
    <html lang="ru">
      <body>
        <Script src="https://telegram.org/js/telegram-web-app.js" />;
{children}
      </body>
    </html>
  );
}


<b>код page.jsx</b>

"use client";
import { useEffect, useState } from "react";

export default function Home() {
  const [userTG, setUserTG] = useState("Загрузка...");
  useEffect(() => {
    setTimeout(() => {
      let tg = window.Telegram.WebApp;
      setUserTG(JSON.stringify(tg.initDataUnsafe.user));
    }, 1000);
  }, []);

  return (
    <div>
      <h5>{userTG}</h5>
    </div>
  );
}



Я смог добраться до данных только таким способом через setTimeout, т.к. если этого не сделать, то будет ошибка
TypeError: Cannot read properties of undefined (reading 'WebApp')


Подскажите куда копать! Может есть какая библиотека? Или я что-то не так делаю! Спасибо!
  • Вопрос задан
  • 156 просмотров
Подписаться 1 Средний 4 комментария
Пригласить эксперта
Ответы на вопрос 1
@setupx
Go & TS developer
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы