Vue.jsとDjango REST Frameworkで画面が真っ白になる原因〜2〜


press
Vue.jsとDjango REST Frameworkで画面が真っ白になる原因〜2〜

Vue.jsとDjango REST Frameworkで画面が真っ白になる原因〜2〜

Django REST Frameworkと組み合わせたVue.jsで、ビルド後にバックエンドの開発サーバー(8000ポートなど)では表示されるのに、フロントエンドの開発サーバー(8080ポートなど)でページを開くと今まで表示されていたのに画面が真っ白になることがありました。このエラーの原因が判明するまでしばらく時間がかかりましたが、原因はビルドした際に出力するディレクトリとパスの関係でした。最終的にdist/staticという構造になるように設定することで表示が確認できました。

vue.config.js

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
  publicPath: "/",
  outputDir: "../dist",
  assetsDir: "static",
  indexPath: "../templates/index.html",
  transpileDependencies: true,
  devServer: {
    host: "localhost",
    hot: "only",
    proxy: {
      "^/api": {
        target: "http://localhost:8080",
        changeOrigin: true,
      },
    },
  },
})

以下のようにビルド後のディレクトリ構造がdist/staticになるように設定することで表示が確認できました。

  outputDir: "../dist",
  assetsDir: "static",

株式会社ファントムへのお問い合わせ

群馬県でPythonを使ったAIやソフトウェアを開発している株式会社ファントムが運営しています。




    Related Articles

    Django

    psycopg2がインストールできずエラーになる

    psycopg2がインストールできずエラーになる DjangoでPostgreSQLに接続するために、以下のコマンドでpsycopg2をインストールしたところ、以下のエラーが発生した時の対処法です。 エラー 実際には…の […]

    Posted on by press
    Django

    Djangoの国際化(i18n)で多言語化(後半)

    Djangoの国際化(i18n)で多言語化(後半) 前回からの続きです。 コードはGitHubリポジトリにあげています。 上記コードを実行すると、locale/en/LC_MESSAGES/django.poが生成されま […]

    Posted on by press