nuxt-jsonapi
Nuxt.js向けの簡単なJSON:APIクライアント統合
バージョン2.x
はNuxt 3.x
をサポートしています。
バージョン1.x
はNuxt 2.x
をサポートしています
はじめに
nuxt-jsonapi
はNuxtにJSON:API クライアントの簡単な統合を追加します。これは優れたKitsu JSON:APIクライアントを基にした緩やかなラッパーです。
このモジュールは、this.$jsonApi
(Options API)またはconst { $jsonApi } = useNuxtApp()
(Composition API)を使用して、どこからでもクライアントにアクセスできる$jsonApi
インスタンスをグローバルに注入します。
設定
- プロジェクトに
nuxt-jsonapi
依存関係を追加します
yarn add nuxt-jsonapi # or npm install nuxt-jsonapi
nuxt.config.js
のmodules
セクションにnuxt-jsonapi
を追加します
{
modules: [
// Simple usage
'nuxt-jsonapi',
// With options
[
'nuxt-jsonapi',
{
baseURL: 'http://www.example.com/api',
/* other module options */
},
],
]
}
- 手順2でオプションを渡さなかった場合は、モジュールオプションを構成するために
nuxt.config.js
にjsonApi
オブジェクトを追加します
export default {
modules: ['nuxt-jsonapi'],
jsonApi: {
baseURL: 'http://www.example.com/api',
/* other module options */
},
}
❗ 重要
baseURL
オプションを指定しないと、デフォルトの/jsonapi
URLが使用されます。**これはほとんどの場合、意図したものではないため**、正しく設定されていることを確認してください。
使用方法
クライアントが提供するすべての機能については、Kitsuの優れたドキュメントを参照してください。
クライアントには次のようにアクセスできます。
Options API
this.$jsonApi
例
export default defineNuxtComponent({
async asyncData({ $jsonApi }) {
const { data } = await $jsonApi.get('/article')
return {
articles: data,
}
},
})
Composition API
const { $jsonApi } = useNuxtApp()
例
<script setup>
import { useNuxtApp, useAsyncData } from '#app'
const { $jsonApi } = useNuxtApp()
const { data: articles } = await useAsyncData(() => $jsonApi.get('/article'), {
transform: ({ data }) => data,
})
</script>
開発
- このリポジトリをクローンします
yarn install
またはnpm install
を使用して依存関係をインストールしますyarn dev
またはnpm run dev
を使用して開発サーバーを起動しますyarn test
またはnpm run test
を使用して自動テストを実行します
npm run dev:prepare
を実行して型スタブを生成します。npm run dev
を使用して、開発モードでplaygroundを起動します。
ライセンス
Copyright (c) Patrick Cate