生産と開発の構造が異なるため、vue 2プロジェクト(webpack-simple template)で表現される高速静的データに問題があります。Expressは、Vue 2 App内の静的ファイルを提供します。
開発: はlocalhost /アプリ
生産: サーバー/いくつかのディレクトリ/アプリ
それは設定ファイルに動的に設定されているように、いくつかのディレクトリは、かなり頻繁に変更されます。 server.jsの
マイなる部分:
if (config.root !== '/') {
app.use(`/${config.root}`, express.static(path.join(__dirname)));
}
app.use('/dist', express.static(path.join(__dirname, 'dist')));
Transpiled JSファイルは、/でのdistフォルダです。アプリがルートであるため、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>App Demo</title>
</head>
<body>
<div id="app"></div>
<script src="/dist/build.js"></script>
</body>
</html>
それは開発中の作品:
これはアプリのエントリポイントとして機能index.htmlファイルです。
しかし、アプリケーションはサーバーのサブフォルダから提供されるため、運用ビルドでは動作しません。
これを解決する方法はありますか?
ありがとうございました。
これは、ルートURLからデータが取得され、配信される静的コンテンツではないことを意味します。私はあなたの解決策を試しましたが、そこに運がありません。これはwebpackテンプレートアプリケーションなので絶対パスを使用する必要があります。そうしなければアプリケーションは蒸散資産を見つけることができなくなるからです。例:src = "../ assets/logo.png"はビルド後にsrc = "/ dist/logo.png"になります。 prefix/custom-directory/usingのノードまたはexpressを持つすべてのリンクを変更することは可能ですか? – user2199236