Vue 初始化数据的道具以进行突变,但 data() 中出现错误:“TypeError:无法读取未定义的属性‘propsTitle’”

pho*_*ong 0 vue.js vue-component vuejs2

data() 中的错误:“TypeError:无法读取未定义的属性‘propsTitle’”

我无法通过数据的道具进行初始化。它一直向我显示此错误,但我不明白为什么?我阅读了 vuejs 教程,它表明title: this.propsTitle这是正确的方法。我缺少什么?谢谢大家!

data() 中的错误:“TypeError:无法读取未定义的属性‘propsTitle’”

          props: {
            propsTitle: String, 
            propsLevel: Number,
            propsProgress: Number,
          },

          data: () => ({
            title: this.propsTitle,
            progress: this.propsLevel,
            level: this.propsLevel,
            activeBtnTxt: "Start",
            isStarted: false

          }),  
// watch: {
      //   progress(val) {
      //     this.progress = val
      //   }
      // },
      // mounted() {
      //   console.log(this.propsProgress)
      //   // this.progress = propsProgress
      //   // this.level = propsLevel
      //   // this.title = propsTitle
      // },
Run Code Online (Sandbox Code Playgroud)

ski*_*tle 5

这:

\n
data: () => ({\n    ...\n})\n
Run Code Online (Sandbox Code Playgroud)\n

应该是这样的:

\n
data () {\n    ...\n}\n
Run Code Online (Sandbox Code Playgroud)\n

如果您使用箭头函数,您最终会得到this指向错误对象的引用。

\n

文档中有关于此的注释:https ://v2.vuejs.org/v2/api/#data

\n
\n

请注意,如果您使用带有 data 属性的箭头函数,this则 \xe2\x80\x99 不会成为组件\xe2\x80\x99s 实例...

\n
\n