Masalahnya adalah nilai untuk backgroundImageharus berupa string seperti ini:
<div class="circular" v-bind:style="{ backgroundImage: 'url(' + image + ')' }"></div>
Berikut biola sederhana yang berfungsi: https://jsfiddle.net/89af0se9/1/
Re: komentar di bawah tentang kebab-case, begini caranya:
<div class="circular" v-bind:style="{ 'background-image': 'url(' + image + ')' }"></div>
Dengan kata lain, nilai untuk v-bind:stylehanyalah objek Javascript biasa dan mengikuti aturan yang sama.
PEMBARUAN: Satu catatan lain tentang mengapa Anda mungkin kesulitan membuatnya bekerja.
Anda harus memastikan imagenilai Anda dikutip sehingga string hasil akhir adalah:
url('some/url/path/to/image.jpeg')
Sebaliknya, jika URL gambar Anda memiliki karakter khusus di dalamnya (seperti spasi atau tanda kurung), browser mungkin tidak menerapkannya dengan benar. Dalam Javascript, tugasnya akan terlihat seperti:
this.image = "'some/url/path/to/image.jpeg'"
atau
this.image = "'" + myUrl + "'"
Secara teknis, ini bisa dilakukan di template, tetapi escaping yang diperlukan untuk menjaganya tetap valid HTML tidak sepadan.
Info lebih lanjut di sini: Apakah mengutip nilai url () benar-benar diperlukan?
backgroundImage) bukan kebab case (background-image) meskipun dokumen mengatakan bisa juga.