title: 谈谈vue与jQuery
date: 2019-02-02 11:48:27
无题
虽然十分不想搭理前端,也不想过多去接触开发,但无奈接了多个前端的锅,也确实花费了我大量的时间在前端开发上(摊手)。总而言之,我的前端开发能力,虽然依旧菜得抠脚,但也有一些小小的感悟。
我曾想用vue
+bootstrap
搭建一个前端项目,但在此过程中,却遇到了一个问题:
在bootstrap
中,要实现对其中一些组件的操作,官网的示例都是使用jQuery
进行的,bootstrap
本身也是与jQuery
紧密结合的。而我却是采用vue
————一个不擅于操作DOM(文档对象模型 Document Object Model)元素的框架。
用过jQuery
的人,应该能深刻体会到其操作DOM元素的便捷。而,bootstrap
+jQuery
的组合在以前更是无往而不利。
但,奈何我用的是vue
。vue
主张对DOM元素渲染,而不是操作。网上找寻 vue
实现DOM操作 的答案,答案中有实现的方法,却又不主张这样做。
这就令我这个想在vue
中使用bootstrap
组件的人,寸步难行了。同时,也给我带来了深深的不解,为什么vue
中不支持便捷的DOM操作呢?难道仅仅为了提高速度吗?
终于,在网上的一个回答中,我找到了答案。
原来,vue
是一种前端的MVVM
框架(模型-视图-视图模型)。因此,我们不应该去操作视图,而应该去操作数据,然后让数据响应到视图中去。
答案中的一句话,也令我醍醐灌顶:
这样做的根源在于,视图应该是数据的反应,而不是数据本身。这样,我们才能把“业务逻辑”和“视图逻辑”去分开。降低耦合,降低维护成本,提升开发效率。
不过,道理明白了,可问题还没解决。bootstrap
本身就是适合jQuery
的,那要如何去操作bootstrap
中的组件呢?那就不用吧。
此时,iview
便应运而生了。这是vuejs
中著名的开源框架之一。该框架提供了丰富的组件库,而组件对应的逻辑操作都是vuejs
模式的,使用起来十分舒畅。
但bootstrap
强大的CSS布局样式,也令人依依不舍。
于是,我决定最终项目的框架使用为:vue
+iview
组件+bootstrap
布局
结语
总言道,前端不如后端,其实不然。在如今,不仅后端在飞速发展,前端也呈现大爆炸的景象。两者可谓齐头并进了。而我也仅仅接触了前端的冰山一角,前端的世界丰富难言。
不过,后端真香。
网友评论