请问如下怎么发生 Cannot read property '1' of undefined?谢谢

<!DOCTYPE html>
<html>
<body>
    <div id="app">
        <component is="kkk"></component>
    </div>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script>
    new Vue({
      el: '#app',
      data:{
        index:"1",
        arr:[
          {template:`<div>组件A</div>`},
          {template:`<div>组件B</div>`},
          {template:`<div>组件C</div>`}
        ],
      },
      components:{
          kkk:this.arr[1]
      },
    })
</script>
</body>
</html>
阅读 4.8k
1 个回答
var a = {
    b: 1,
    c: this.b
}

此时的this指向window,并不是a。再回到你的代码里,this.arr就是window.arr,这是undefined,再[1]取值,抛出错误

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