Angular2应用程序的构build,但加载的CSS,JS文件夹时找不到文件

我有一个使用nodejs服务器API的angular2应用程序。 我使用nd b构build应用程序,该应用程序在dist文件夹中创build了文件。 我在哪里可以指定生产版本的生产url,以便所有的CSS,JS文件加载正确。 在这里输入图像描述

而且,我是否需要Apache服务器来承载这些构build。 或者我可以使用节点服务器本身来承载它?

index.html的:

<!doctype html> <html> <head> <base href="/"> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Demo</title> <link rel="icon" type="image/x-icon" href="favicon.ico"> <link rel="stylesheet" href="assets/styles/css/custom.css"/> <script src="assets/vendor/pace/pace.js"></script> </head> <body> <app-root> <div class="loading"></div> </app-root> </body> </html> 

谢谢

通过分析你的html文件,我看到一个与<base>标签有关的问题。

你需要提供./而不是/哪个是错误的。 下面给出了更正后的html文件。

 <!doctype html> <html> <head> <base href="./"> <!-- use ./ instead of / --> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>SHEPHERD SHIELD</title> <link rel="icon" type="image/x-icon" href="favicon.ico"> <link rel="stylesheet" href="assets/styles/css/custom.css"/> <script src="assets/vendor/pace/pace.js"></script> </head> <body> <app-root> <div class="loading"></div> </app-root> </body> </html> 

为了开发和testing目的,您可以从dist文件夹指定css的url。 如果你要生产,那么你可以复制缩小版本的CSS和JS文件,并把它们放在stylejs文件夹中,例如,也可以从这些文件夹中设置HTML文件中的URL。