Meteor - это основа Node.JS, которая является чисто JavaScript. Из этого вы можете делать все, что обычно можете, включая добавление методов к существующим прототипам или их изменение вообще (например, изменение прототипа Array
для добавления методов на массивы).
Однако это поведение не рекомендуется. Это создает очень высокую связь между вашим кодом и способами, определяющими среду. Это может также вызвать сильные несовместимости и дисфункции в библиотеках.
Если вам нужно сменить прототип (например, чтобы добавить свои собственные функции) на пакет/плагин/фрейм, обратитесь к его документации (некоторые могут посоветовать скорее составить объекты с помощью extend()
).
Не меняйте прототипы объектов JS по умолчанию.
Вот небольшой пример того, как создать собственный прототип, а затем использовать его с объектом:
var userPrototype, user;
userPrototype = {
sayHi : function() {
if(_.has(this, name)) {
return 'Hi, my name is ' + this.name + '!';
}
return '... Who am I?';
}
};
user = Object.create(userPrototype); //user has userPrototype as prototype
user.name = 'Will';
user.sayHi(); //Returns 'Hi, my name is Will!'
В качестве бонуса, вот free book о JS и прототипов.
Так вы спрашиваете о создании прототипов или о переменных масштабах? Или оба? –
Если вы положили его в client/lib, он должен быть доступен везде. – Gaelan
@Kyll Prototypes для этого вопроса. –