• 为什么绝大部分框架不实现双向数据绑定


    绝大部分操作只需要单向绑定就能实现,双向绑定在一定程度上不利于管理数据源
    
    

    单向数据绑定:指的是我们先把模板写好,然后把模板和数据(数据可能来自后台)整合到一起形成HTML代码,然后把这段HTML代码插入到文档流里面。

    单向数据绑定缺点:HTML代码一旦生成完以后,就没有办法再变了,如果有新的数据来了,那就必须把之前的HTML代码去掉,再重新把新的数据和模板一起整合后插入到文档流中。

    双向数据绑定:数据模型(Module)和视图(View)之间的双向绑定。

    用户在视图上的修改会自动同步到数据模型中去,同样的,如果数据模型中的值发生了变化,也会立刻同步到视图中去。

    双向数据绑定的优点是无需进行和单向数据绑定的那些CRUD(Create,Retrieve,Update,Delete)操作

    双向数据绑定最经常的应用场景就是表单了,这样当用户在前端页面完成输入后,不用任何操作,我们就已经拿到了用户的数据存放到数据模型中了。

    目前。实现双向数据绑定的前端框架主要有AngularJS,VueJS等

    不过,我总感觉双向数据绑定的应用场景非常有限。
    backbonejs不实现双向数据绑定的解释:大概的意思就是双向数据绑定在实际的运用中很少,没必

    谈起angular的脏检查机制(dirty-checking), 常见的误解就是认为: ng是定时轮询去检查model是否变更。 其实,ng只有在指定事件触发后,才进入$digest cycle:

    • DOM事件,譬如用户输入文本,点击按钮等。(ng-click)
    • XHR响应事件 ($http)
    • 浏览器Location变更事件 ($location)
    • Timer事件($timeout, $interval)
    • 执行$digest()或$apply()
  • 相关阅读:
    With在sql server 2005中的用法
    相互关联子查询在项目中的用法
    存储过程中@@Identity全局变量
    sql server 2008 5120错误
    如何启用 FILESTREAM
    表变量在存储过程或sql server中的运用
    Union ,Union ALL的用法
    数据移植(利用Ado.Net功能实现)
    Foreign Key ,NO action,Cascade的用法
    EXISTS 在SQL 中的用法
  • 原文地址:https://www.cnblogs.com/zhengyuan1314/p/7105159.html
Copyright © 2020-2023  润新知