仮想ディレクトリ内の Angular + Cordova
P粉551084295
P粉551084295 2024-02-17 22:08:52
0
1
789

仮想ディレクトリで実行するように 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

実際の Web ページでは

<base href="/{virtualDirectory}/"> としてレンダリングされます。

この問題をグーグルで調べてみましたが、これを修正する方法に関する提案が見つかりませんでした (または少なくとも機能するものはありませんでした)。誰かが私を正しい方向に導くのを手伝ってくれませんか?ティア。

P粉551084295
P粉551084295

全員に返信(1)
P粉616383625

Apache サーバー上の仮想ディレクトリでパブリッシュするときにも、この問題が発生しました。私が従ったのは次のとおりです:

  1. 物理パス フォルダーと仮想ディレクトリ フォルダーが同じであることを確認してください。のように:###
    物理パス:
  • D:\some-path\project-name\audience
  • 仮想パス:
  • https://your-web-name/audience/d63b643da9b9cfc65e7d304b0aa33c98
    このコマンドを実行します
  1. ng build --base-href ./ --deploy-url ./ (: このコマンドは、ポイント 1 に正しく従った場合にのみ機能します)
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート