Используйте вычисленное или временное значение, это облегчит задачу.
В этом решении вы бы задали изображение-заполнитель, которое будет отображаться при загрузке (или оставьте пустым).
Затем используйтехук mounted()
для загрузки данных, а затем назначить стиль
Шаблон:
<div class="element" :style="imgStyle"/>
Сценарий:
data:{
return () => {
imgStyle: {
'background-image': 'url(my-placeholder.png)' // or not included at all
}
}
},
mounted() {
axios.get(url)
.then(response => {
this.$set(this.imgStyle, 'background-image', `url(${response.config.url})`);
})
.cath(e) {
throw new Error(e);
}
}
В качестве примечания, попробуйтедержитесь подальше от функций в шаблонах для отображения значений, которые можно выполнить с помощью вычислений.