Angular 5修复Assets /文件夹的相对路径

时间:2018-07-17 07:31:22

标签: angular angular5 httpserver

我正在使用Angular 5应用,正在将其托管在Apache2.4 http服务器上,并使用http://localhost:7777/test/上的代理模块对其进行重定向

我的第一个问题是从浏览器调用服务时,它使用http://localhost:7777/作为基本URL,通过从我的测试服务中将斜线从/service1/upload删除到service1/upload来快速解决。 所以我从http://localhost:7777/service1/upload转到了http://localhost:7777/test/service1/upload

现在我在Assets /文件夹中遇到另一个image.png的未解决问题,它一直试图从http://localhost:7777/assets/image.png而不是http://localhost:7777/test/assets/image.png来获取它

我测试了第二个URL,它按要求返回了我的图片。如何使Angular 5相对地找到我的资产路径?以我为例,致电http://localhost:7777/test/assets/image.png

这是我访问HTML图像的方式:

..
<img  src='assets/stop_pic.PNG' > 
..

我在index.html中的基本href:

<base href="">

我的angular-cli.json conf:

...    
apps": [
        {
          "root": "src",
          "outDir": "../src/main/resources/static",
          "assets": [
            "assets"
          ],
          "index": "index.html",
          "main": "main.ts",
          "polyfills": "polyfills.ts",
          "test": "test.ts",
          "tsconfig": "tsconfig.app.json",
          "testTsconfig": "tsconfig.spec.json",
          "prefix": "app",
          "styles": [
            "styles.css"
          ],
          "scripts": [],
          "environmentSource": "environments/environment.ts",
          "environments": {
            "dev": "environments/environment.ts",
            "prod": "environments/environment.prod.ts"
          }
        }
      ],
    ...

2 个答案:

答案 0 :(得分:2)

即使答案有点愚蠢,也能得到答案。 浏览器缓存了我的应用程序,因此没有计入我从<img src='../../assets/stop_pic.PNG'><img src='assets/stop_pic.PNG'>的最后一次修改。 从我的图像中删除所有斜杠src起作用了!

答案 1 :(得分:0)

在index.html中设置基本href,例如-

<base href='/'>

更改-

 "assets": [
            "assets"
          ],

TO-

 "assets": [
             "src/assets"
          ],

在HTML中引用图片,例如:

src="/assets/images/footer-min.png"