2016-07-27 23 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

謝謝!我剛剛發現了完全相同的東西。我通過改變依賴關係解決了我的問題,這與您的答案中描述的相同; ) –

相關問題