#javascript #function #typescript #commonjs
#javascript #функция #typescript #commonjs
Вопрос:
Я новичок в программировании и переписываю пакет node, созданный моим другом. Пакет написан на JavaScript, и я хочу преобразовать его в TypeScript:
Существует несколько модулей commonjs, большинство из них являются просто функциями, например:
/* foo.js (original)*/
exports.foo = function foo(values) {
//some code
}
/* foo.ts */
export function foo(values: number[]): number {
//some code
}
// which is compiled to foo.js (new)
function foo(values) {
//some code
}
exports.foo = foo;
Он создал ссылку на foo
функцию: exports.bar = exports.foo
Я хочу сохранить старую функцию ( foo
) и связать ее с bar
, и иметь возможность использовать новую функцию как bar(values)
, как я могу это сделать?
Я думал, что мог бы сделать что-то вроде:
export var bar: (values) => number = foo;
Но по какой-то причине не работает.
Комментарии:
1. Что это делает? Какую ошибку вы получаете?
2. У меня было
cannot invoke a function whose type lacks a call signature
, но, похоже, у меня произошла ошибка при импорте другого файла. Теперь работает