请教 Laravel mix 自动编译 CSS 的时候,url 的重写功能能不能添加相对路径?
项目路径是:http://domain.com/pathaaa
,而非绝对路径之下,
不想在url()
中写死路径/pathaaa/xxx.png
,因为可能会改变,而想能够配置指定一个路径,根据环境变量
改变,查找了一天没找到合适的方法。。。请问有什么方法吗?
以下是查找的资料不太合适:
url()
的绝对路径将被排除在 url 重写之外。因此, url('/images/thing.png')
或 url('http://example.com/images/thing.png')
将不会被更改。
注意,这里说的是相对 URL? 默认情况下,Laravel Mix 和 webpack 将会找到 thing.png ,将其复制到 public/images 文件夹中,然后在生成的样式表中重写 url()。因此,编译的 CSS 将是:
.example {
background: url(/images/thing.png?d41d8cd98f00b204e9800998ecf8427e);
}
这也是 webpack 的一个很酷的特性。然而,它确实有一种倾向,让那些不理解 webpack 和 css-loader 插件如何工作的人感到困惑。你的文件夹结构可能已经是您想要的了,而且你希望 Mix 不要修改那些 url()
。如果是这样的话,我们确实提供了一个覆盖方式:
mix.sass('src/app.scss', 'dist/').options({
processCssUrls: false
});
推荐文章: