Hi all!
I frequently get this error in my console:
mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
It is invoked in packages/lai:collection-extensions/collection-extensions.js
:
// This is used to reassign the prototype of unfortunately // 43 // 51
// and unstoppably already instantiated Mongo instances // 44 // 52
// i.e. Meteor.users // 45 // 53
CollectionExtensions._reassignCollectionPrototype = function (instance, constr) { // 46 // 54
var hasSetPrototypeOf = typeof Object.setPrototypeOf === 'function'; // 47 // 55
// 48 // 56
if (!constr) constr = typeof Mongo !== 'undefined' ? Mongo.Collection : Meteor.Collection; // 49 // 57
// 50 // 58
// __proto__ is not available in < IE11 // 51 // 59
// Note: Assigning a prototype dynamically has performance implications // 52 // 60
if (hasSetPrototypeOf) { // 53 // 61
Object.setPrototypeOf(instance, constr.prototype); <<< HERE // 54 // 62
} else if (instance.__proto__) { // 55 // 63
instance.__proto__ = constr.prototype; // 56 // 64
} // 57 // 65
};
What does it mean?