Windows 8 WinJS.Binding.mixin和WinJS.Binding.dynamicObservableMixin之间有什么区别?
在WinJS中,有三种与绑定相关的混合:Windows 8 WinJS.Binding.mixin和WinJS.Binding.dynamicObservableMixin之间有什么区别?,windows-8,winjs,mixins,Windows 8,Winjs,Mixins,在WinJS中,有三种与绑定相关的混合: WinJS.Binding.com WinJS.Binding.mixin和WinJS.Binding.dynamicObservableMixin都定义了相同的混合方法。它们的定义之间的唯一区别是WinJS.Binding.mixin定义为WinJS.Binding命名空间上的不可枚举属性,而WinJS.Binding.dynamicObservableMixin定义为可枚举属性: WinJS.Namespace.define("WinJS.B
- WinJS.Binding.com
WinJS.Namespace.define("WinJS.Binding", {
mixin: { value: dynamicObservableMixin, enumerable: false, writable: true, configurable: true },
dynamicObservableMixin: { value: dynamicObservableMixin, enumerable: true, writable: true, configurable: true },
});
我看不到这两个mixin之间有任何真正的区别——我看不到这个属性上可枚举标志的差异的相关性。这两个词的混用在语义上或其他方面有什么区别吗?你说得对。
mixin
和dynamicObservableMixin
之间没有真正的区别。它们是一样的
WinJS.Binding.mixin
添加了addProperty、removeProperty、get/setProperty等方法,这些方法由WinJS.Binding.expandProperties
使用。expandProperties用于使现有类可见。动态特性归因于向对象动态添加属性
例如:
var MyListViewModel = WinJS.Class.define(
function MyListViewModel_ctor()
{
this._initObservable();
},
{
load: function load()
{
var self = this;
return serviceclient.getMyListData().then(function (records)
{
self.items = new WinJS.Binding.List(records);
});
}
});
WinJS.Class.mix(MyListViewModel,
WinJS.Binding.mixin,
WinJS.Binding.expandProperties({ items: '' }));
emixin
和mixin
之间存在差异<代码>通知只有绑定
、解除绑定
和通知
方法。你说得对。mixin
和dynamicObservableMixin
之间没有真正的区别。它们是一样的
WinJS.Binding.mixin
添加了addProperty、removeProperty、get/setProperty等方法,这些方法由WinJS.Binding.expandProperties
使用。expandProperties用于使现有类可见。动态特性归因于向对象动态添加属性
例如:
var MyListViewModel = WinJS.Class.define(
function MyListViewModel_ctor()
{
this._initObservable();
},
{
load: function load()
{
var self = this;
return serviceclient.getMyListData().then(function (records)
{
self.items = new WinJS.Binding.List(records);
});
}
});
WinJS.Class.mix(MyListViewModel,
WinJS.Binding.mixin,
WinJS.Binding.expandProperties({ items: '' }));
emixin
和mixin
之间存在差异code>仅具有bind
、unbind
和notify
方法