I am trying to render VueJS data strings within HTML tags with VueJS mustaches. However, the strings don't appear to be rendering - the variable values are populating as observed within VueJS dev-tools. Any assistance on determining what must have gone wrong will be appreciated.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Doc Scan</title>
<!--Bulma CSS-->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.1/css/bulma.css" />
<!-- Vue JS Production-->
<!-- <script src="https://cdn.jsdelivr.net/npm/vue"></script> -->
<!-- Vue JS Dev-->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<h1 class="title is-1">Doc Scanner</h1>
<div class="file has-name">
<label class="file-label">
<input class="file-input" type="file" ref="file" v-on:change="handleFileUpload()">
<span class="file-cta">
<span class="file-icon">
<i class="fas fa-upload"></i>
</span>
<span class="file-label">
Choose a file…
</span>
</span>
<span class="file-name" v-if="file">
File is there : {{ filename }}
</span>
<span class="file-name" v-else>
No file selected
</span>
</label>
</div>
</div>
<!--VueJS Script-->
<script>
var app = new Vue({
el: '#app',
data: {
file: '',
filename: '',
},
methods: {
handleFileUpload() {
this.file = this.$refs.file.files[0];
this.filename = this.file.name;
console.log(this.filename)
}
}
})
</script>
</body>
</html>