采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
为什么这里classMap = [‘decrease’, ‘discount’, ‘special’, ‘invoice’, ‘guarantee’];要写在created中,而不能写在data中。尝试了一下写在data中,编译不报错,但就是遍历不出数组元素。这是为什么
可以写在 data 中,只是没有必要,因为不需要把它们变成响应式的。你是如何写在 data 中的
data() { return { detailShow: false, classMap: ['decrease', 'discount', 'special', 'invoice', 'guarantee'] }; } 尝试这样,编译没有错误,但是浏览器报错: [Vue warn]: Error when evaluating expression "classMap[seller.supports[0].type]": TypeError: Cannot read property '0' of undefined (found in component: <v-header>)
那是因为 seller 一开始是空对象,seller.supports 为 undefined,seller.supports[0] 就报错了,你可以用 v-if 加一层保护,参考我的源码
谢谢老师
登录后可查看更多问答,登录/注册
掌握Vue1.0到2.0再到2.5最全版本应用与迭代,打造极致流畅的WebApp
2.7k 21
1.2k 21
1.4k 20
1.3k 18
1.6k 17