シングル SPA アプリケーションを構築していますが、展開に向けて問題に直面しています。各アプリをサブディレクトリ (app-bar-mf、products-mf など) 内にデプロイし、root-config (メイン アプリケーション) をベースにデプロイします。
ローカルで作業する場合、各アプリは独自のサーバー (localhost:9000、localhost:9001 など) を介して提供されるため、ここにサブディレクトリはありません。
デプロイしようとすると、publicPath が使用されず、アセットは「/products-mf/img/foo.png」ではなく「/img/foo.png」を通じて提供されます。
__webpack_public_path__
main.jsに設定すると、すべてが期待どおりに機能します。
手がかりはありますか?
vue.config.js
module.exports = {
publicPath: process.env.NODE_ENV === "production" ? "/products-mf/" : "/",
configureWebpack: () => {
const conf = {
externals: [
"vue",
"vuex",
"vue-router",
"vue-i18n"
]
};
if (process.env.NODE_ENV === "production") {
conf.output = { "products.js" };
}
return conf;
},
filenameHashing: false,
transpileDependencies: ["vuetify"]
};