Я пытаюсь использовать библиотеку worker_threads node.js с Node v14.15.1 и получаю эту ошибку
Cannot find module 'worker_threads' or its corresponding type declarations.ts(2307)
tsc
src/api/services/email.service.ts:1:62 - error TS2307: Cannot find module 'worker_threads'.
1 import { Worker, isMainThread, parentPort, workerData } from 'worker_threads';
Found 1 error.
мой код -
import { Worker, isMainThread, parentPort, workerData } from 'worker_threads';
рабочие потоки стали стабильными после узла 11. Так что это должно работать. Что я делаю не так ?
PS - я запускал тот же код с JS, и он работал нормально, поэтому я не думаю, что это проблема Node.js. Другие основные библиотеки, такие как fs, также работают нормально. Нужна ли мне дополнительная конфигурация для TS?
Спасибо, но это уже сделано, и другие основные библиотеки, такие как «fs», работают нормально. Только с этой библиотекой
Убедитесь, что версия пакета @types указана правильно.
@AluanHaddad спасибо за вашу помощь. Не помню почему, но у меня была очень старая версия @types/node и ts-node. После обновления заработало отлично. Еще раз спасибо!
@RohanGulati У меня точно такая же проблема, до каких версий @types/node и ts-node вы обновлялись? Было бы полезно, если бы вы могли указать шаги в качестве ответа или в комментариях.
@ChrisOdney спасибо за напоминание. я добавил ответ





Эта проблема заключалась в том, что я использовал довольно старые версии. После обновления проблема решилась. Если кто-то сталкивается с такой же проблемой, обновите эти версии в вашем package.json - я обновился до
Также убедитесь, что версия Nodejs 12 LTS или выше, чтобы иметь стабильную поддержку «рабочего потока».
Это не помогает для "ts-node": "^9.1.1" и "@types/node": "^14.14.37".
@EugeneZalivadnyi Это хорошо протестировано с этими версиями. С какой проблемой вы столкнулись? Может быть, я могу помочь
В моем случае эта проблема возникла в моем проекте Angular после npm audit fix --force
Итак, после нескольких попыток вот что я сделал:
sudo n stable (сначала необходимо установить менеджер версий узла)ng updateЭта команда даст вам несколько рекомендаций в столбце с именем «Команда», чтобы обновить каждое обновление отдельно и убедиться, что оно работает правильно.
Потом бегу ng serve и все приходит в норму.
У меня такая же ошибка на ubuntu. Недавно я установил узел на свою новую машину. Раньше я был на Windows. Я понял, что использую гораздо более старую версию узла (v10 или аналогичную).
После обновления версии узла до последней версии v16.13.1 мне удалось устранить ошибку. Мне также пришлось удалить папку node_modules и файл package-lock.json. Я принял предложение Рохана выше и следовал приведенным здесь инструкциям:
https://github.com/enable3d/enable3d/issues/231
Ваш ответ может быть улучшен с помощью дополнительной вспомогательной информации. Пожалуйста, отредактируйте , чтобы добавить дополнительные сведения, такие как цитаты или документация, чтобы другие могли подтвердить правильность вашего ответа. Вы можете найти больше информации о том, как писать хорошие ответы в справочном центре.
npm install @types/nodeили эквивалентная команда для вашего менеджера пакетов.