请问为什么barcode显示不了,是no element给他挂载?该怎么写,谢谢

<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.19.2/axios.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.6.11/vue.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jsbarcode/3.11.0/JsBarcode.all.js"></script>
</head>
<body>
<div id="app">
      {{info.sites.bar}}
      <canvas id="barcode1"></canvas>
</div>
<script>
var vm = new Vue
({ 
    el : '#app',
    mounted() {
      _self=this;
      axios
      .get('./db.json')
      .then(function(response){_self.info = response.data;_self.createCode("barcode1",info.sites.bar)} )
      .catch(function (error) { // 请求失败处理
        console.log(error);
      });
    },
    data :  {
      info:{}},
    methods:
    {
     createCode(s,k){
       JsBarcode(s,k,{
        format:"CODE128B",
        width:3,
        height:50})
     },
    },
});
</script>
</body>
</html>

//db.json
{"sites":{ "bar":"192001"}}

阅读 5.1k
1 个回答

对象默认没有的字段vue不能监听,再说你这初始化的时候控制台不是应该报错的吗

data: {
  info: {
    sites: {
      bar: '',
    },
  },
},

试下data默认值这样子

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题