2016-07-27 20 views
0

最近,我遇到了一个由vuejs的计算选项引起的问题。当通过计算选项变化创建的v-for数组时,DOM不会相应地改变

首先,我使用v-for来循环由计算选项创建的数组(soloColImgs)。

我的HTML

<div class="show-box" v-for="item in soloColImgs" track-by="$index"> 
       <img v-bind:src="item.imgUrl"/> 
       <a v-bind:href="item.itemUrl" target="_blank"></a> 
    </div> 

我的JS

//... 
    computed: { 
    soloColImgs :function(){ 
      //.... 
    }, 

    methods: { 
     change:function(){ 
       this.soloColImgs.pop(); 
      } 
     } 

其次,我用pop()splice()等等改变阵列(soloColImgs)当我看着控制台,可对阵列相应地改变,但是,DOM根本不会改变。如果有人能帮我解决这个问题,那将是非常棒的。

回答

1

计算属性的一点是它完全由定义它的函数决定。你不能直接改变它,你必须通过作用于依赖关系来改变它。依赖关系是用来计算返回值的属性。

+0

谢谢!我刚刚发现了完全相同的东西。我通过改变依赖关系解决了我的问题,这与您的答案中描述的相同; ) –

相关问题