Я хотел бы написать прокси-объект для автоматической печати ошибок при вызове некоторого свойства в исходном объекте, которое не найдено.
const proxyObjectFn = () => {
const _obj = Object.assign({}, originalObject);
const get = (key) => {
const value = _obj[key];
if (value === undefined) {
console.error(`${key} not found`);
}
return value;
};
return {
get,
};
};
const proxyObject = proxyObjectFn();
export default proxyObject;
// caller
proxyObject.get('someProperty')
Это работает, но есть какой-нибудь элегантный способ, чтобы я мог вызвать через proxyObject.someProperty
вместо proxyObject.get('someProperty')
?
Обновление
Позвольте мне сделать это более конкретным c. На самом деле я пишу объект перевода.
Исходный объект может быть из json, например { "HELLO_KEY": "Hello World" }
. Я должен позвонить как { label: _t.SOME_I18N_KEY }
в коде интерфейса пользователя, предполагая, что _t
является прокси-объектом выше. Я могу напечатать предупреждение, чтобы сказать мне, что отсутствует перевод.