UNPKG

nestedreact

Version:

Advanced models, state management, and data binding solution for React

19 lines 1.2 kB
export function createChangeTokensConstructor(props) { var propNames = Object.keys(props); var PropsChangeTokens = new Function('p', 's', "\n var v;\n this._s = s && s._changeToken;\n " + propNames.map(function (name) { return "\n this." + name + " = ( ( v = p." + name + ") && v._changeToken ) || v;\n "; }).join('') + "\n "); PropsChangeTokens.prototype._hasChanges = new Function('p', 's', "\n var v;\n return ( ( s && s._changeToken ) !== this._s ) " + propNames.map(function (name) { return " ||\n this." + name + " !== ( ( ( v = p." + name + ") && v._changeToken ) || v )\n "; }).join('') + ";\n "); return PropsChangeTokens; } ; export var EmptyPropsChangeTokensCtor = createChangeTokensConstructor({}); export var PureRenderMixin = { shouldComponentUpdate: function (nextProps) { return this._propsChangeTokens._hasChanges(nextProps); }, componentDidMount: updateChangeTokens, componentDidUpdate: updateChangeTokens }; function updateChangeTokens() { this._propsChangeTokens = new this.PropsChangeTokens(this.props, this.state); } //# sourceMappingURL=pureRender.js.map