WordPress を API として、Nuxt.js を JavaScript フレームワークとして使用して、ブログベースのページを構築しました。 この問題は _slug.vue ファイルで発生します。個々のブログ (プロジェクト) ページに移動すると、個々のブログ投稿が正常に表示されます。ただし、単一のブログ投稿ページをリロードするか、URL を入力すると、コンソールにエラー「GET url 500 (RuntimeError)」が表示されます。
<テンプレート><ヘッダー/>{{project.title.rendered}}
<クリックしてアクション />
および一つの目的の接続:
項目は nuxt.config.js 内に静的にあります。
調査の結果、nuxt-link の params オブジェクトで渡される ID が、id の値を取得するために「父」ページが必要なため、再ダウンロード後に失われることが判明しました。この問題を解決するために、API を使用して slug を取得しました。項目を終了し、すべてのプロパティ (例: コンテンツなど) を表示します
async asyncData({ params, $axios }) { 試す { console.log(params.slug); const project = await $axios.$get(`https://my-api.wp/wp-json/wp/v2/project?slug=${params.slug}&_embed`) {プロジェクト}を返す } キャッチ (エラー) { ... }
asyncData
は、ページを更新するとき、または URL を直接入力するときに再トリガーされません。これらのイベントが発生したときにデータを取得したい場合は、
fetch()
hookまたはmiddlewareを使用できます。編集された回答
続行する前に、
リーリー@nuxtjs/axios
がインストールされていることを確認してください:https://axios.nuxtjs.org/setup