Vue.js:为什么我的v-else指令导致我的元素被多次渲染?

时间:2015-11-01 05:26:29

标签: javascript vue.js

我正在尝试vue.js,到目前为止看起来还不错。我遇到了一些意想不到的行为,我不知道这是一个错误,还是故意的。在某些情况下,v-else指令会导致我的元素多次渲染。我把它减少到最小的再现。

尝试点击“开始”按钮,并注意会出现越来越多的“不”段落。我希望最多只有1个。

var d = { n: null };
new Vue({
  el: 'body',
  data: d,
  methods: {
    go: function() { d.n = d.n == null ? 0 : null; }
  }
});
<script src="//cdnjs.cloudflare.com/ajax/libs/vue/1.0.3/vue.min.js"></script>

<p v-if="n">yes</p>
<p v-else>no</p>

<button v-on:click="go()">go</button>	

我可以找到让我能够达到预期行为的解决方法,但在我开始向我的代码库添加黑客之前,发生了什么?

1 个答案:

答案 0 :(得分:2)

Evan You verified that this is a bug.并修复了它。

在我醒来之前。