角度:图像未在生产中加载

克里希纳(Krishna Chaitanya)

我在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,但图像仍未解析。

马哈茂德·法兹(Mahmoud Fawzy)

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/如从斜角官方文档中看到的那样:

在基本href中以斜杠结尾

此外,如果它们具有相同的基础,则可以合并路由器的应用程序基础和资产的基础,/myapp/因此无需指定deploy-url:

ng build --prod --base-href /myapp/

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章