0

如果我们将 MVC 用于我们的网页,尤其是如果我们只是修改数据(模型),并让视图“观察”模型,以便对模型进行任何更改,视图将自动更新并反映模型,我们怎么还能有动画呢?

更新:视图只是一个模板,例如 Mustache 或 Handlebars,例如,在 can.js 中,那么我们如何制作动画?)

例如,假设我们有两行卡片。用户可以点击第一行将卡片“移动”到第二行。因此,如果我们不使用 MVC,我们可以将第 1 行中的卡片淡出,并将卡片淡入到第 2 行的末尾。但是,如果我们实际使用 2 个数组,让 2 个视图观察这 2 个数组,无论这两个数组如何变化,视图都反映了模型,那么我们如何才能真正实现淡出淡入呢?我只能想到如果视图使用opacity: 0不显示卡片,并使用CSS过渡使我们为卡片的消失和外观设置动画,但是在不透明度之后卡片仍然会显示为空白空间(仍然占用屏幕空间)是0。问题是,我们如何让view自动显示模型是什么但仍然有动画?

4

1 回答 1

1

添加到行和从行中删除是对状态的更改。动画只是一种可视化状态变化的方式。

因此,它实际上非常简单:确定用于每个状态变化的动画(添加 = 淡入,移除 = 淡出...),当状态变化发生时,执行相应的动画。

于 2014-03-25T18:04:03.977 回答