我正在使用Webpack File-Loader在CSS文件中的背景图像中加载图像。我在本地环境和服务器上使用不同的URL遇到困难。
在IIS本地,我有一个名为“ platform”的网站,因此URL为http://localhost/platform
。
生产服务器正在使用根文件夹,因此生产上的URL为http://application-name.com
,没有“平台”段。
现在,我使用一种变通方法来检查NODE_ENV并添加或不添加“平台”段:
loader: 'file-loader',
options: {
name: '[path][name].[ext]',
publicPath: process.env.NODE_ENV === 'development' ? '/platform/' : '/'
}
这种方法不是很可靠,有人可以帮我指定一个通用的publicPath吗?
以前我是用另一种方式做的:
loader: 'file-loader',
options: {
name: '[path][name].[ext]',
publicPath: (url, resourcePath, context) => {
return `../../../${url}`;
}
}
但是现在它对我来说不再起作用,因为现在我需要在项目的不同位置启动代码,并且可以有不同级别的url:
http://application-name.com/1/2
http://application-name.com/1/2/3