我在 Windows 8 上的 Metro javascript 应用程序中遇到数据绑定问题。
在 *构建 xxxx *
我创造了我想绑定的价值
var someValue = WinJS.Binding.as({ primitive : 1 });
我实际上已经把它放在全局范围内以排除事情
然后只需设置一个简单的回调以每 5 秒更新一次此值
setInterval(function () { someValue. primitive++ }, 5000);
WinJS.Binding.processAll();
这是在页面js文件的ready函数中
然后在 HTML 文件中只是一个简单的 h1 标签
<h1 data-win-bind="innerText : someValue.primitive">Test</h1>
当此页面运行时,它最初会进行数据绑定 - 因此 h1 标记显示 1 但从不显示其他任何内容。回调确实受到打击,并且在任何时候我都可以检查 someValue 并且它看起来正确。我尝试在 someValue 对象上使用 setProperty 和 updateProperty ,但没有任何区别。
我会很感激任何建议。谢谢!