【发布时间】:2012-10-19 15:43:19
【问题描述】:
我在Backbone.js'页面中阅读了以下内容:
在开发涉及大量 JavaScript 的 Web 应用程序时, 你学到的第一件事就是停止将你的数据与 DOM。创建最终的 JavaScript 应用程序太容易了 就像一堆纠结的 jQuery 选择器和回调一样,都在尝试 疯狂地保持 HTML UI 和 JavaScript 之间的数据同步 逻辑和服务器上的数据库。对于富客户端 应用程序,更结构化的方法通常会有所帮助。
我不确定我是否完全理解上面的段落(我也不确定我是否完全理解使用 Backbone.js 的必要性)。
谁能给我一个将数据绑定到 DOM 的示例以及 Backbone.js 如何解决它?
编辑:
这是一个例子吗?
jQuery(document).ready(function($) {
// Header
jQuery('#header #searchbox').attr('placeholder', '<?php echo pll__("Header Search Field"); ?>');
(etc...)
(这是我使用的 hack,因为我不知道如何使用 php)。
所以如果我修改#searchbox 的ID 或移动它的位置,代码将无法再次运行。上面这段话是指这个吗?
【问题讨论】:
-
一个更好的例子是,如果您在单个页面上的多个位置显示某人的头像。有人改变他们的头像会发生什么?使用 Backbone(或类似工具),每个人都会收到
'change'事件并重绘自己,如果没有 Backbone,您将无法确保每个人都手动更新;手工操作往往会导致一大堆相互关联的困惑和挫败感。此示例背后的基本用例是同时在多个(可能数量不同)位置显示相同的信息。
标签: javascript dom backbone.js