1

更新:这是一个小提琴。它比我自己的真实应用程序好一点,但仍然突出了潜在的错误(或我的误解)。请注意,“outro”过渡不起作用。

http://jsfiddle.net/k4a81fza/1/

原来的:

这是我在父 Ractive 内部使用的部分内容:

<script id="session_tpl" type="text/ractive">
  <div>
    <a href="#" on-tap="showDetail">
      {{#if p.project !== null}}
        <p intro-outro="fly">
          {{project}}
        </p>
      {{/if}}
    </a>
  </div>
</script>

以下是我尝试更新数据的方式(从代表详细视图的不同 ractive 更改):

daysRac.set('days[1].sessions[2].project', null);

模板中的<p>标签成功消失,但没有过渡。我尝试过其他过渡并调整了持续时间和延迟,但它总是会立即被删除。

理想情况下,我想要不同的 outro 和 intro 过渡,我认为我可以通过以下方式实现:

daysRac.set(keypathToProject, null, function(){
  daysRac.set(keypathToProject, "The New Value");
});

同样,这可以更新 中显示的项目值<p>,但没有过渡。

有没有办法完成我所追求的?

4

1 回答 1

0

这可能是一个错误,我在 GitHub 上提交了一个问题

问题是 Ractive{{description}}null在过渡开始之前更新。如果您不使用表达式,它可以正常工作{{#if description !== null}},即如果您更改为{{#if describtion}}.

于 2014-09-27T14:35:38.713 回答