在使用babel在Vue中创建我们的新系统之后,我已经开始测试与旧设备的兼容性。我们的通天塔将源代码连同webpack一起向下移植到es2015。
我现在已经针对ios和android使用browserstack进行了测试。较新的操作系统可在两个平台上运行。但是在使用默认浏览器I get an error in sentry的android手机上; Duplicate data property in object literal not allowed in strict mode
它没有给我任何提示,可能会导致调试过程非常困难。
我现在可以看到的隧道尽头的唯一灯是ios部分。运行IOS <9的ios设备指出错误 Attempted to redefine property 'value'.
also in sentry
如果我没有记错,那么ios问题就是同一问题的改写错误?
当我阅读over here时,我认为“值”可能在对象或元素中定义了两次。
这一切都包裹着一个问题,如何找到重复的数据属性?
最佳答案
您可以共享一些代码(仅仅是几个组件中的区域吗?)
要检查的一件事是data()
内部,请确保您要返回一个对象。当我开始使用Vue时,这发生在我身上。
例:
// component a
data () {
a: ''
}
// component b
data () {
a: '' // ERROR! Duplicate
}
发生这种情况是因为
data
在主Vue实例上合并了。因此,在这种情况下,它应类似于:// component a
data () {
return {
a: ''
}
}
// component b
data () {
return {
a: '' // ok now
}
}
没有一些代码很难做出任何其他猜测。
关于ecmascript-6 - 有效地找到对象文字中的重复数据属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47197535/