Edw*_*oso 3 javascript object.observe
我知道如何使用Object.observe(),和Object.getNotifier(obj).notify或Object.getNotifier(obj).performChange,但我怎么用Object.deliverChangeRecords()
Object.deliverChangeRecords的要点是同步传递到正在侦听突变的函数.
http://www.danyow.net/object-deliverchangerecords/
这是一个运行示例,演示了有和没有的事件序列deliverChangeRecords:
var output = document.getElementById('output');
function runTest(useDeliver) {
var obj = {};
output.textContent = '';
function handleChange(records) {
output.textContent += 'CHANGE DELIVERED\n';
}
Object.observe(obj, handleChange);
output.textContent += '1\n';
obj.a = 'b';
output.textContent += '2\n';
if (useDeliver) {
Object.deliverChangeRecords(handleChange);
}
output.textContent += '3\n';
}Run Code Online (Sandbox Code Playgroud)
<button onclick="runTest(true)">With deliverChangeRecords</button>
<button onclick="runTest(false)">Without deliverChangeRecords</button>
<pre id="output"></pre>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
260 次 |
| 最近记录: |