我正在更新html元素的数据属性:
$element.attr('data-x', 500);
" data-x"属性在视图中绑定:
<div class="cell" data-x.bind="aViewModelProperty">
Aurelia viewmodel有一个&#34; propertyChanged&#34;永远不会触发的方法:
aViewModelPropertyChanged(newValue) {
alert(newValue);
}
加载视图时,会从viewmodel和DOM中的data-x属性中正确读取该值。如果更新了data-x属性的值(使用第一个&#34; attr&#34; -statement),则该值永远不会被推送到viewmodel,因此绑定似乎是单向的。
用例是我有一个第三方库直接更新DOM上的数据属性,我希望将这些更改推送到具有绑定到数据属性的属性的viewmodel。
注意:
指定双向绑定的Explicity会产生此错误:
错误[app-router]错误:观察&#34; LABEL&#34;元素&#34;数据-x&#34;属性不受支持。(...)
织补..