请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

为什么组件里面用v-for的话,(value, key)in objlist里面的属性会被组件的那边的参数替换掉了?

正在回答 回答被采纳积分+3

2回答

提问者 qq_万能的pino_04344828 2017-06-19 22:35:17

https://img1.sycdn.imooc.com/szimg//5947dfe3000181a705520509.jpg

https://img1.sycdn.imooc.com/szimg//5947dfe30001125d10400618.jpg

就是这个v-for(value, key)为啥不是下面的objList里面name:apple这些, 而是componentA这个组件那边的?如果是componentA这个组件那边的,那vulue和key也是componetA的而不是objList的?数据的传递过程是怎样的,有点蒙b。

0 回复 有任何疑惑可以回复我~
  • 因为你是遍历 componentA啊,v-for是写在componentA里面的,key和value要通过参数传给componentA才能渲染出来,但没必要这么做,循环体里要在当前组件渲染value和key这些变量,不要传,增加复杂度
    回复 有任何疑惑可以回复我~ 2017-06-21 09:45:00
  • 提问者 qq_万能的pino_04344828 回复 fishenal #2
    噢,懂了
    回复 有任何疑惑可以回复我~ 2017-06-21 22:11:32
  • 你这里是遍历循环了componentA,objList里有几项,就渲染几遍componentA。
    objList应该有四项。
    
    v-for里面的value key 是objList的,不过你根本没调用啊,这里的value key的作用域是 componentA标签内部,不会传递到componentA组件里,这么用是能调到的:
    <componentA v-for='..'>{{ value }} {{ key }}</componentA>
    
    这么写你也不会渲染这里的变量,除非componentA里面调用slot
    回复 有任何疑惑可以回复我~ 2017-12-19 15:58:11
fishenal 2017-06-19 12:03:30

理论上不会出现这种情况,把整段代码粘过来看看

0 回复 有任何疑惑可以回复我~
  • 你好,我已把完整的问题描述粘在上面了,求解答。
    回复 有任何疑惑可以回复我~ 2017-06-20 12:20:37
  • 这个我也没看懂,怎么会渲染了四遍
    回复 有任何疑惑可以回复我~ 2017-12-16 21:16:59
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信