[英]Webpack resolve images in certain directory
I have my images in /assets/images
, and my code in /src
. 我的图像在
/assets/images
,代码在/src
。
To reference the images from /src
, I have to currently do this: 要从
/src
引用图像,我目前必须这样做:
require("../assets/images/some-image.png");
Is there a way that I can simplify this so that I don't need to specify the image path? 有没有一种方法可以简化此过程,而无需指定图像路径? Potentially just requiring
image!some-image.png
? 可能只需要
image!some-image.png
吗?
You could set a variable with the path and reference that. 您可以使用路径设置变量并引用该变量。
var imagePath = '../assets/images/';
require(imagePath + 'some-image.png');
or with ES6 template strings 或带有ES6模板字符串
const imagePath = '../assets/images/';
require(`#{imagePath}some-image.png`);
I managed to achieve this by using resolve.alias
: 我设法通过使用
resolve.alias
实现此目的:
resolve: {
alias:{
"~images": path.resolve("./assets/images")
},
extensions: [ '', '.js', '.jpg' ]
}
I can then use require("~images/test.jpg");
然后,我可以使用
require("~images/test.jpg");
to get me ./assets/images/test.jpg
. 让我
./assets/images/test.jpg
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.