TX014

استفاده خارج از <AppRouter>

کنسول

Text.js error TX014: … must be used inside <AppRouter>. Run your app with `text dev`, or wrap it in <AppRouter routes={…}>.

علت بروز

هوک‌های useRouter، usePathname، useParams، useSearchParams، useAppTheme و کامپوننت <Link> وضعیتی را می‌خوانند که <AppRouter> فراهم می‌کند. کامپوننت خارج از آن رندر شده است، معمولاً در یک فراخوانی مستقل renderToConsole یا یک آزمون واحد.

روش رفع

برنامه را با دستور text dev، text start یا text run اجرا کنید که کامپوننت <AppRouter> را برای شما نصب می‌کنند. هنگام رندر دستی (در آزمون‌ها یا موارد تعبیه‌شده)، به‌جای صفحه، مسیریاب را نصب کنید:

import { AppRouter } from "@textjs/app/router";await renderToConsole(<AppRouter routes={routes} />);