刚刚开始学习Win 8应用程序开发,我正在学习数据绑定的基础教程。
我想要了解的代码是:
<div id="basicBinding">
Welcome,
<span id="nameSpan" data-win-bind="innerText: name"></span>
</div>
<script type="text/javascript">
var person = { name: "Fran" };
var personDiv = document.getElementById("nameSpan");
WinJS.Binding.processAll(personDiv, person);
我理解如下,如果任何术语错误,请道歉。
脚本中的第一行创建一个名为“person”的变量,它是一个对象文字,在其中我们存储了名称数据。
第二行创建变量'personalDiv',它存储已绑定到HTML span elemet'nameSpan'的数据。
脚本的第三行实际上处理第一行和第二行,以便变量可用于其余代码。
我不明白的是span元素实际输出Fran的'name'值。我无法确切地知道发生了什么,允许'data-win-bind'调用识别'person'变量并检索名称数据。 'personDiv'变量似乎尝试从'nameSpan'中检索一个值,之后nameSpan甚至有一个值(显然我只是错误地解释它,但我看不出正确的逻辑。
我确信,鉴于它的初学者教程,我已经过了一百万次了,但任何帮助都会非常感激!
谢谢!
答案 0 :(得分:2)
data-win-bind
只是一个普通的属性;它实际上没有做任何事情。
当您致电WinJS.Binding.processAll()
时,它会查找具有该属性的所有元素并对其进行处理。