Javascript 如何在组件VueJS中初始化小部件?

Javascript 如何在组件VueJS中初始化小部件?,javascript,vue.js,vuejs2,vue-component,Javascript,Vue.js,Vuejs2,Vue Component,做得一样好,但不幸的是出了问题。 我想初始化代码。 这是我的代码: <template> <div id="vk_share_button"></div> </template> <script> export default { methods:{ start(){ document.getElementById('vk_share_button').innerHTML =

做得一样好,但不幸的是出了问题。 我想初始化代码。
这是我的代码:

<template>
  <div id="vk_share_button"></div>
</template>

<script>
    export default {
      methods:{
        start(){
          document.getElementById('vk_share_button').innerHTML =
            VK.Share.button('example.com', {type: 'link'});
        }
      },
      created(){
          VK.ready(this.start());
      }
    }
</script>

导出默认值{
方法:{
开始(){
document.getElementById('vk_share_button').innerHTML=
按钮('example.com',{type:'link'});
}
},
创建(){
准备就绪(this.start());
}
}
我还尝试使用:VK.Share.ready/VK.Share.button.ready,但得到了相同的错误:

无法将属性“innerHTML”设置为null

我以为外部代码没有加载,但我不确定。哪里会出错?

尝试使用block而不是block,因为在实例刚被挂载之后会调用mounted block,其中el被新创建的vm替换。$el`,如下所示:

<script>
    export default {
      methods:{
        start(){
          document.getElementById('vk_share_button').innerHTML =
            VK.Share.button('example.com', {type: 'link'});
        }
      },
      mounted(){
          VK.ready(this.start());
      }
    }
</script>

导出默认值{
方法:{
开始(){
document.getElementById('vk_share_button').innerHTML=
按钮('example.com',{type:'link'});
}
},
安装的(){
准备就绪(this.start());
}
}

控制台上还有一个问题:VK.ready不是一个函数。但它是有效的。我该如何改进它呢?看起来没有这样的方法
ready
。只需执行mounted(){this.start();}即可插入按钮。