我在src / assets / images /目录中有我的图像,在html中,我像下面这样指它们
<img src="assets/images/penndot-logo-full.png" />
在开发模式下可以正常工作。但是在生产中却给出404错误。我已经使用以下命令构建了我的应用程序
ng build --prod --deploy-url /myapp --base-href /myapp
本节说明prod angle将使用base-href标签中的内容解析图像路径。我检查了已编译的index.html页面,并且base-href指向/ myapp,但图像仍未解析。
Angular利用基本href告诉路由器如何组成导航URL。如果您的应用程序位于根目录,则可以使用/作为href值,如下所示。
<base href="/">
如果使用默认值构建项目用于生产环境的Angular项目,则将生成以下index.html。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>some title</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
<app-root>Loading...</app-root>
</body>
</html>
但正如我所见,您的应用程序可能存在于生产模式下名为myapp的子文件夹中
所以你需要像这样使你的基本href <base href="/myapp/">
因此,命令中缺少的部分是斜杠的结尾,/myapp/
如从斜角官方文档中看到的那样:
此外,如果它们具有相同的基础,则可以合并路由器的应用程序基础和资产的基础,/myapp/
因此无需指定deploy-url:
ng build --prod --base-href /myapp/
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句