Javascript Vue.js数据在created()函数中不可用
我在使用localStorage中的数据初始化Vue组件时遇到问题。这是我的代码的简化版本Javascript Vue.js数据在created()函数中不可用,javascript,vue.js,Javascript,Vue.js,我在使用localStorage中的数据初始化Vue组件时遇到问题。这是我的代码的简化版本 new Vue({ el: "#my-element", created: () => { if (window.localStorage.getItem("verified")) { this.verification.verified = true; } }, data: { verifica
new Vue({
el: "#my-element",
created: () => {
if (window.localStorage.getItem("verified")) {
this.verification.verified = true;
}
},
data: {
verification: {
verified: false
}
}
});
但我在控制台上不断收到一个错误无法读取未定义的属性“验证”
如果我在created()函数中放入一个调试器
,然后检查this
、this.verification
和this.verification.verified
的值,它们都被设置为我在数据对象中初始化的值
有人能解释一下我做错了什么吗
基本上,当页面加载时,如果用户以前已经通过了验证过程,我会尝试隐藏一个元素。好的,我解决了问题。。这是因为我对函数使用ES2015符号。。更改回
function(){}
将允许它再次工作。。因此,我需要做更多的研究,找出如何将ES2015与Vue.js一起使用当您希望外部上下文中的this
的值流入函数体时,而不是希望函数拥有自己的this
上下文时,可以使用箭头函数。这意味着您创建的函数中的此
不指向您的Vue实例
但是,您仍然可以使用ES6提供的速记方法声明语法:
new Vue({
created() {
// ...
}
});