从本地到服务器时找不到特定路径

Cannot find specific paths when going from local to server

我正在尝试从本地主机和服务器使用 icons/fonts。 我的项目结构如下: https://files.gitter.im/webpack/webpack/7XUh/image.png (无法作为图片插入,因为我还没有 10 个声誉。)

我已经定义了资产→图像→徽标地图中的所有图标。 webpack.config.js 中的 baseUrl 定义为“./”。

我正在尝试使用我的-notifications.scss中的图标: 背景:白色 url(/../../assets/images/logos/sample-logo.svg) 右 15px 中心不重复;

这在我的本地主机上工作。但是,如果我在服务器上打开我的客户端,它找不到 svg 文件。 控制台中的错误输出如下: GET http://server/assets/images/logos/sample-logo.svg 404(未找到)

要在服务器上导航到我的客户端,我导航到:http://server/company/customername/client2

奇怪的是,我制作了一个带有名称、ID 和图像源的 TypeScript 模型。我在我的应用程序的另一个地方使用这个图像源 (this.imagesrc = './assets/images/logos/sample-image'),图像源在那里工作,在本地主机和服务器上。

有人知道如何解决这个问题吗?

谢谢。

静态文件由您的输出路径提供,但您需要将 public 路径指定为您的服务器:

http://server/company/customername/client2 您需要将其添加到生成的包中。您可以在 publicPath 中定义它: output: { publicPath: `http://server/company/customername/client2` },

那么您的生产资产将从 http://server/company/customername/client2/assets/images/logos/sample-logo.svg

开始提供

如果您使用的是 CDN,您还可以在运行时生成资产。参考:https://webpack.js.org/concepts/output/#advanced