比如我想把项目部署到/vue目录下
vue.config.js里的publicPath是/vue/,assertDir是static
我的一个样式里是这样写的
background-image: url(/vue/static/img/sprite.1.2.4.png)
这样是绝对路径没问题,那如果我想换根目录部署,这个样式里的/vue前缀该怎么动态的改变?(用的是sass)
忘了说了,static是在public下,public和src同级
比如我想把项目部署到/vue目录下
vue.config.js里的publicPath是/vue/,assertDir是static
我的一个样式里是这样写的
background-image: url(/vue/static/img/sprite.1.2.4.png)
这样是绝对路径没问题,那如果我想换根目录部署,这个样式里的/vue前缀该怎么动态的改变?(用的是sass)
忘了说了,static是在public下,public和src同级
可以使用 ~@/static/...
也可以在vue.config.js
中配置resolve.alias
在sass里边直接使用~static
就行了。
// vue.config.js
function resolve(dir) {
return path.join(__dirname, dir);
}
module.exports = {
// ...
chainWebpack: config => {
config.resolve.alias
.set("static", resolve("src/static"))
},
// ...
.bg{
background:url('~static/img/xxxx.jpg')
}
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答4.7k 阅读✓ 已解决
4 回答4.3k 阅读✓ 已解决
4 回答1.9k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
正常你文件里引入图片就直接按 相对路径引用, 通过webpack打包后他会自动给你补上
vue/static