가상 디렉터리에서 실행되도록 Angular 애플리케이션을 설정했습니다. (https://{url}/{virtualDirectory}
)
콘텐츠 소스로 URL을 가리키는 Cordova 앱에 이 앱을 래핑하려고 합니다. (<content src="https://{url}/{virtualDirectory}"/>
)
내 index.html 파일에 추가했습니다 cordova.js
脚本。 (<script src="cordova.js"></script>
)
내 문제는 Angular Router가 방해가 되는 것 같습니다. 애플리케이션을 디버깅할 때 다음 콘솔 오류가 표시됩니다.
caught 语法错误:意外的标记“<”(位于 cordova.js:1:1)
소스 코드를 보면 Angular 애플리케이션의 404 페이지가 렌더링되어 Angular 라우팅이 이 경로를 처리하려고 하는 것을 볼 수 있습니다.
Docker 구성에서 빌드하고 배포할 때 가상 폴더를 사용해야 하기 때문에 baseHref
를 설정합니다.
ng 构建 --base-href /{virtualDirectory}/ --configuration=$environment --output-path=dist
는 실제 웹페이지에서 <base href="/{virtualDirectory}/">
로 렌더링됩니다.
이 문제를 인터넷에서 검색해 보았지만 이 문제를 해결하는 방법에 대한 제안을 찾을 수 없었습니다(또는 적어도 효과가 있는 것이 없었습니다). 누군가 나를 올바른 방향으로 안내하도록 도와줄 수 있나요? 티아.
Apache 서버의 가상 디렉터리에 게시할 때도 이 문제가 발생했습니다. 내가 팔로우한 내용은 다음과 같습니다.
D:some-pathproject-nameaudience
https://your-web-name/audience/d63b643da9b9cfc65e7d304b0aa33c98
ng build --base-href ./ --deploy-url ./
(참고: 이 명령은 1번 항목을 올바르게 따랐을 경우에만 작동합니다)