質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

MicroCMS

MicroCMSとは、APIベースのヘッドレスCMSです。日本製のため、デフォルトで日本語に対応しており、サポートも豊富。管理画面でも作成したコンテンツなどが見やすくシンプルで、APIの管理がしやすい点も特徴です。

HeadlessCMS

HeadlessCMS(ヘッドレスCM)とは、REST APIを用いてコンテンツを提供するCMS。そのため、あらゆるデバイスで表示することができます。フロントエンドとバックエンドの分離されており、フロントエンド側の高い自由度が特徴です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

0回答

1259閲覧

【Nuxt.js】動的ルーティングをgenerate時に反映させたい

manape

総合スコア12

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

MicroCMS

MicroCMSとは、APIベースのヘッドレスCMSです。日本製のため、デフォルトで日本語に対応しており、サポートも豊富。管理画面でも作成したコンテンツなどが見やすくシンプルで、APIの管理がしやすい点も特徴です。

HeadlessCMS

HeadlessCMS(ヘッドレスCM)とは、REST APIを用いてコンテンツを提供するCMS。そのため、あらゆるデバイスで表示することができます。フロントエンドとバックエンドの分離されており、フロントエンド側の高い自由度が特徴です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2021/04/15 20:31

編集2021/04/15 20:32

前提・実現したいこと

Nuxt.js + microCMSで、投稿したコンテンツをAPIで取得し、静的ページとして生成したいです。
データの取得にはaxiosを使っておりますが、私の知識不足もありドキュメント通りに書いてもエラーになります。
初歩的な質問で恐縮ですが、お知恵を貸していただけるとありがたいです。

発生している問題・エラーメッセージ

Cannot read property 'get' of undefined

該当のソースコード

nuxt.config.jsです。

JavaScript:

1export default { 2 target: 'static', 3 4 head: { 5 title: 'microCMS-practice', 6 htmlAttrs: { 7 lang: 'ja', 8 }, 9 meta: [ 10 { charset: 'utf-8' }, 11 { name: 'viewport', content: 'width=device-width, initial-scale=1' }, 12 { hid: 'description', name: 'description', content: '' }, 13 ], 14 link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }], 15 }, 16 17 css: [], 18 19 plugins: ['~/plugins/axios'], 20 21 components: true, 22 23 buildModules: [ 24 '@nuxtjs/eslint-module', 25 ], 26 27 modules: [ 28 // https://go.nuxtjs.dev/axios 29 '@nuxtjs/axios', 30 ], 31 32 axios: { 33 baseURL: 'https://practice.microcms.io/api/v1', 34 headers: { 'X-API-KEY': 'MY-API-KEY' }, 35 }, 36 37 build: {}, 38 39 generate: { 40 async routes({ $axios }) { 41 const pages = await $axios.get('/blog?').then((res) => 42 res.data.contents.map((content) => ({ 43 route: `/${content.id}`, 44 payload: content, 45 })) 46 ) 47 return pages 48 }, 49 }, 50}

試したこと

 -> axiosのインストール方法がimport axios from 'axios' となっていて、その記述違いにつまずき動作しませんでした。

  • エラー文から察するに、axiosの読み込みが正しくできていないのかとは思うのですが、Nuxtの方のドキュメントを読んでも、axiosのインストールはmodule内で@nuxtjs/axiosを読み込みながらnuxt.config.js内でaxiosを読んでいる例が見つけられず、正しい読み方が分かりません。

補足情報(FW/ツールのバージョンなど)

"@nuxtjs/axios": "^5.13.1"
"nuxt": "^2.15.3"

初歩的なつまずきだとは思うのですが、3日間ほどこれで進められておらず…
お力お借りできれば幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問