コンテンツへスキップ
ドキュメントエラー`url` は非推奨です

`url` は非推奨です

このエラーが発生した理由

6.xより前のバージョンでは、urlプロパティはすべてのPageコンポーネント(pagesディレクトリ内のすべてのページ)に魔法のように注入されていました。

これが廃止される理由は、物事を非常に予測可能で明示的にしたいからです。どこからともなく魔法のようなurlプロパティが現れるのは、その目標を助長しません。

⚠️場合によっては、React Dev Toolsを使用すると、コード内のどこにもurlを参照していなくても、この警告がトリガーされる可能性があります。一時的に拡張機能を無効にして、警告が持続するかどうかを確認してください。

考えられる修正方法

/docs/advanced-features/codemods#url-to-withrouter

Next 5以降、Next.jsルーターオブジェクトをページとそれらのすべての子孫コンポーネントに明示的に注入する方法を提供しています。注入されるrouterプロパティは、pathnameasPath、およびqueryのような、urlと同じ値を保持します。

withRouterの使用例を次に示します

pages/index.js
import { withRouter } from 'next/router'
 
class Page extends React.Component {
  render() {
    const { router } = this.props
    console.log(router)
    return <div>{router.pathname}</div>
  }
}
 
export default withRouter(Page)

urlプロパティの使用箇所を自動的にwithRouterに変更するためのコードモッド(コードからコードへの変換)を提供します。

このコードモッドと実行方法の説明は、こちらにあります:/docs/advanced-features/codemods#url-to-withrouter