仮想ディレクトリで実行するように Angular アプリケーションをセットアップしました。 (https://{url}/{virtualDirectory}
)
このアプリケーションを、コンテンツ ソースとして URL を指す Cordova アプリケーションでラップしようとしています。 (<コンテンツ src="https://{url}/{virtualDirectory}"/>
)
index.html ファイルに、cordova.js
スクリプトを追加しました。 (<script src="cordova.js"></script>
)
私の問題は、Angular Router が邪魔になっているようです。アプリケーションをデバッグすると、次のコンソール エラーが表示されます:
構文エラーが見つかりました:cordova.js:1:1
ソース コードを見ると、Angular アプリケーションの 404 ページがレンダリングされているため、Angular ルーティングがこのパスを処理しようとしていることがわかります。
Docker 構成でビルドしてデプロイするときは、仮想フォルダーを使用する必要があるため、baseHref
を設定します。
ng build --base-href /{virtualDirectory}/ --configuration=$environment --output-path=dist
<base href="/{virtualDirectory}/"> としてレンダリングされます。
Apache サーバー上の仮想ディレクトリでパブリッシュするときにも、この問題が発生しました。私が従ったのは次のとおりです:
物理パス:- D:\some-path\project-name\audience
仮想パス: - https://your-web-name/audience/d63b643da9b9cfc65e7d304b0aa33c98
このコマンドを実行します- ng build --base-href ./ --deploy-url ./
(
注: このコマンドは、ポイント 1 に正しく従った場合にのみ機能します)