动态加载模型视图_前端系列——MVVM思想、动态组件以及动画

1、MVVM思想

mvvm是一种思想,是我们编程的一种思想,源于后台语言的mvc

m:model,模型,就是数据ml>

v:view,视图,就是html结构,就是界面

c:controller,控制器,将m和v结合到一起的粘合剂

vm:view model,视图模型,和c是一样,将m和v结合到一起的粘合剂。

后台开发中,都是基于mvc架构的。在前端开发中,一般是指mv,可以是c,也可以是vm。 其中,vm这种说法更理想。

mv*的核心思想,就是将逻辑(数据)和显示相分离。

fdc943973a82c98909bb794a433d77d4.png

一旦,我们使用了vue实例对象,作为viewmodel,将view和model结合到一起。此时,我们就可以做如下两件事情:

• 通过数据绑定,将数据输出到视图上 --- 通过data 绑定

• 可以在视图上,进行操作,然后修改模型中的数据 --- 通过 DOM 监听

现在,通过数据绑定,去显示数据:

545bdaeb7575432c68a91923721c2958.png

2、动态组件

在原来我们使用vue的时候,通常在一个元素上只挂载一个vue实例。那如果我们要在一个元素上挂载多个,但又保证每时每刻只有一个显示,这可以实现吗?答案是可以的,但这必然要对多个组件进行切换。这时候我们就可以想到----动态组件。

动态组件的实现很简单,就是使用保留的 元素,动态地绑定到它的 is 特性:根据 v-bind:is="组件名" 中的组件名去自动匹配组件,如果匹配不到则不显示。

cbc2a411fb3677f39cb80ce1d5d517d6.png

3、css过渡及动画

Vue 提供了 transition 的封装组件,在下列情形中,可以给任何元素和组件添加 entering/leaving 过渡:

条件渲染 (使用 v-if)

条件展示 (使用 v-show)

动态组件

组件根节点

在使用的时候,需要配合如下四个类:

v-enter,定义进入过渡的开始状态。在元素被插入之前生效,在元素被插入之后的下一帧移除。

v-enter-active,和v-enter一起添加,在完成transition时被移除

v-leave-to,在元素不显示的一瞬间被添加,然后瞬间被移除

v-leave-active,和v-leave-to一起添加,在完成transition时被移除

以上四个类针对两个场景:

进入场景,需要使用v-enter和v-enter-active

离开场景,需要使用v-leave-to和v-leave-active

1b79cdde5797f9aef54af840f70aef8b.png

keyframes实现动画:

9c70698bd6bb86f715785816f85e5ab1.png

animate插件实现动画:

4cdd41bccba599acedeef1ac999e3d37.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值