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} />);