Я использую модуль npm, называемый clear, для написания приложения CLI.
Модуль clear очень прост:
module.exports = function clear(opts) {
if (typeof (opts) === 'boolean') {
opts = { fullClear: opts }
}
process.stdout.write('\x1b[0f');
};
Так что это действительно простой модуль. Однако, когда я вызываю функцию в своем коде, например:
const clear = import('clear')
clear()
, я получаю следующее сообщение об ошибке:
Это выражение не вызывается. Тип 'Promise <(opts ?: ClearOptions) => void>' не имеет вызова signatures.ts (2349)
То же самое верно для любого другого модуля, который экспортирует функции.
Мой tsconfig выглядит следующим образом:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"outDir": "dist",
"resolveJsonModule": true,
"typeRoots": ["./typings", "node_modules/@types"]
},
"include": ["./**/*.ts"],
"exclude": ["node_modules", ".vscode", "./typings"]
}
Я ошибаюсь?
Обновление:
Если я изменяю импорт оператор const clear = require('clear')
тогда он отлично работает!