vue在data内引用this.$route的属性之后,会造成this.$options.data()丢失的问题

vue在data内引用this.$route的属性之后,会造成this.$options.data()丢失的问题

问题请看下面三张图,自己的项目里也有这个问题,然后用Vue CLI 3建了一个新项目,创建选项都使用默认,只额外安装了vue-router, 请问这个是我使用问题,还是vue-router的bug。
Xnip2018-12-29_22-11-05.jpg
clipboard.png
Xnip2018-12-29_22-11-58.jpg
clipboard.png
Xnip2018-12-29_22-12-39.jpg
clipboard.png

代码

<template>
  <div style="text-align:center">
    <input type="button"
           @click="getData"
           value="测试">
  </div>
</template>

<script>
export default {
  name: "home",
  data() {
    return {
      a: 1,
      b: this.$route
    }
  },
  methods: {
    getData() {
      return this.a
    }
  }
}
</script>
阅读 4.3k
2 个回答

测试如下代码:

data() {
      return {
        a: 1,
        b:router.options.routes
      }
    },

console.log(this.$options.data());
打印结果
{a: 1, b: Array(5)}

bookId: parseInt(this.$route.params.id),

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