Я использую NodeJS и пытаюсь получить JSDoc в собственность, чтобы получить то, что я делаю. У меня есть некоторый код, который выглядит следующим образом:Как документировать module.exports, определенный с помощью object.defineProperty
Object.defineProperty(module, 'exports', {
enumerable: true,
configurable: true,
get: function() {
const factory = {};
/**
* Output message to the console
* @param {string} str
*/
factory.foo = function(str) {
console.log(str);
};
return factory;
}
});
Экспорт Foo стандартным способом exports.foo = function(str) { ... }
не вариант в данном случае.
Другие модули могут включать этот модуль, имеющий доступ к foo (как если бы он был экспортирован напрямую). Например:
var x = require('./x');
x.foo('Hello');
Так как я могу документировать это так, чтобы JSDoc улавливает, что этот модуль имеет функцию Foo?