react-winjs.js
function (propType) {
        return {
            propType: propType,
            preCtorInit: function focusProperty_preCtorInit(element, options, data, displayName, propName, value) {
                options[propName] = value;
            },
            update: function focusProperty_update(winjsComponent, propName, oldValue, newValue) {
                if (oldValue !== newValue) {
                    var asyncToken = winjsComponent.data[propName];
                    asyncToken && clearImmediate(asyncToken);
                    asyncToken = setImmediate(function () {
                        winjsComponent.data[propName] = null;
                        winjsComponent.winControl[propName] = newValue;
                    });
                }
            },
            dispose: function focusProperty_dispose(winjsComponent, propName) {
                var asyncToken = winjsComponent.data[propName];
                asyncToken && clearImmediate(asyncToken);
            }
        };
    }
function (propType) {
        return {
            propType: propType,
            preCtorInit: function focusProperty_preCtorInit(element, options, data, displayName, propName, value) {
                options[propName] = value;
            },
            update: function focusProperty_update(winjsComponent, propName, oldValue, newValue) {
                if (oldValue !== newValue) {
                    var asyncToken = winjsComponent.data[propName];
                    asyncToken && clearImmediate(asyncToken);
                    asyncToken = setImmediate(function () {
                        winjsComponent.data[propName] = null;
                        winjsComponent.winControl[propName] = newValue;
                    });
                }
            },
            dispose: function focusProperty_dispose(winjsComponent, propName) {
                var asyncToken = winjsComponent.data[propName];
                asyncToken && clearImmediate(asyncToken);
            }
        };
    }
function ( propType ) { return { propType : propType , preCtorInit : function focusProperty_preCtorInit ( element , options , data , displayName , propName , value ) { options [ propName ] = value ; } , update : function focusProperty_update ( winjsComponent , propName , oldValue , newValue ) { if ( oldValue !== newValue ) { var asyncToken = winjsComponent . data [ propName ] ; asyncToken && clearImmediate ( asyncToken ) ; asyncToken = setImmediate ( function ( ) { winjsComponent . data [ propName ] = null ; winjsComponent . winControl [ propName ] = newValue ; } ) ; } } , dispose : function focusProperty_dispose ( winjsComponent , propName ) { var asyncToken = winjsComponent . data [ propName ] ; asyncToken && clearImmediate ( asyncToken ) ; } } ; }
Maps to a property on the winControl which involves setting focus. Such properties are set outside of componentWillReceiveProps to prevent React from undoing the focus move.
Maps to a property on the winControl which involves setting focus . Such properties are set outside of componentWillReceiveProps to prevent React from undoing the focus move .