在components文件夹中,我将包括共享资产在内的组件分组在单独的文件夹中:
src/
--- components/
------ ComponentGroup/
--------- assets/
------------ img/
--------- Component1.vue
--------- Component2.vue
--------- index.js
现在,当我从模板标签或样式标签的assets / img文件夹中加载图像时,webpack / vue-loader会获得具有自动相对路径的正确图像。
但是例如,当我从javascript创建Image对象时,它使用绝对路径:
const img = new Image;
img.src = 'assets/img/picture.png';
http://localhost/assets/img/picture.png
如何使其加载相对的?我必须配置webpack还是必须使用webpack为我提供的路径?
该解决方案正在使用require获取路径:
const img = new Image;
img.src = require('.assets/img/picture.png');
编辑1:我认为,即使将它们放到根资产文件夹中,也不会加载/集成到构建中。 编辑2:require()解决了它,它返回了图像的生成路径。