AngularJs双向绑定
一、什么是AngularJS
AngularJS是一个JavaScript框架,它诞生于2009年,由Misko Hevery 等人创建,后为Google所收购。是一款优秀的前端JS框架,已经被用于Google的多款产品当中。
AngularJS有着诸多特性,最为核心的是:MVVM、模块化、自动化双向数据绑定、语义化标签、依赖注入等等。
今天这篇文章主要是来理解什么是自动化双向数据绑定以及其实现的方式。
二、什么是数据绑定
首先我们要理解什么是数据绑定。目前我们所看到的网站页面中,基本是由数据和设计两部分组成。将设计转换成浏览器能理解的语言,便是html和css主要做的工作。而将数据显示在页面上,并且有一定的交互效果(比如点击等用户操作及对应的页面反应)则是js主要完成的工作。出于用户体验、数据安全等方面考虑,很多时候我们不会一提交数据就刷新页面(get请求),而是通过向后端请求相关数据,然后通过无刷新加载(ajax)的方式进行页面更新(post请求)。当数据进行更新后,页面上相应的位置也能自动做出对应的修改,这就是数据绑定。可以看出,数据绑定是M(model,数据)通过VM(model-view,数据与页面之间的变换规则)向V(view)的一个修改。
三、什么是双向绑定
所谓的双向绑定,就是从界面的操作能实时反映到数据,也就是数据的变更能够实时展现到界面。
在新的框架中(angualr,react