hasura-rest-hands-on/docs/create-vue-app.md
2021-07-20 21:06:36 +09:00

2.7 KiB

Vueアプリケーションの作成

Edit in CodeSandbox

このリンクからCodeSandboxにアクセスし、Vueアプリケーションを作成します。

なお、URLに含まれる memo-demo は、Hasura Cloudプロジェクト名によって異なるので、適宜自分の作成したプロジェクトに合わせて読み替えてください。

<template>
  <QuillEditor
    ref="editor"
    :content="{ ops: [{ insert: '読み込み中…' }] }"
    @update:content="update"
    toolbar="full"
  />
</template>

<script>
import { QuillEditor } from "@vueup/vue-quill";
import "@vueup/vue-quill/dist/vue-quill.snow.css";
import axios from "axios";
import _ from "lodash";

/** ここに先ほど作成したREST APIエンドポイントを指定します */
const endpoint = "https://memo-demo.hasura.app/api/rest/page/1";

export default {
  name: "App",
  components: { QuillEditor },
  beforeMount() {
    this.update = _.debounce(async (content) => {
      await axios.put(endpoint, { content });
      console.debug("updated", content);
    }, 1000);
  },
  async mounted() {
    const res = await axios.get(endpoint);
    const content = res.data.page?.content;
    this.$refs.editor.setContents(content);
    console.debug("content", content);
  },
};
</script>

Hasuraのコンソールにアクセスすると、実際にデータが更新されていることを確認することが可能です。

Hasuraを使用してPostgresデータベースに接続したREST APIを構築し、それを利用したWebアプリを作成しました。いかがでしたか。

このハンズオンは以上です。もし質問や提案、問題などあればGitHub Issuesにてお気軽にご報告ください。