data: function () {
return {
cityData: cityData,
selectedOptions:this.source[this.schema_key]
}
}
This.source[this.schema_key] auf der Konsole lautet wie folgt
[24, 81, __ob__: Observer]
Gibt es eine Möglichkeit, solche Daten direkt zu erhalten?
[24, 81]
__ob__: Observer
这些数据是vue这个框架对数据设置的监控器,一般都是不可枚举的。console.log
这样的打印函数,被打印的变量会执行自身的toString()
,这样,即便内部属性是不可枚举,实际上也能看到。举个例子:因为你已经将数据绑定在了vue之中,vue就肯定要为数据添加监控器的,如果你强制删掉了这些监控器,那么这些数据也就失去了监控,那么你使用vue的意义何在……
如果仅仅是去掉这些监控器而不考虑后果的话,把对象复制一份就行了,因为复制的对象是不包含不可枚举属性的。
js这类动态语言,复制对象是个很头疼的事情。我写了个简单的,你可以参考一下:
在外面直接用
clone()
方法就行了。这个对数据没有影响吧~
同样,求解。。。。