如何修复无法在角4中找到模块“打字稿”?

我三周前用@angle/cli 生成了 Angular 4应用程序。两个星期后,我试图用命令行 ng serve运行它,但我被提示出现以下错误:

Cannot find module 'typescript'
Error: Cannot find module 'typescript'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (C:\Users\mypc\Documents\Angular Projects\my-angular-app\node_modules\@angular\cli\models\config\config.js:5:12)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)

你知道怎么修吗,谢谢。

194342 次浏览

这个应该能行,

npm install -g typescript

我能够通过删除 node_modules然后运行 npm install来解决这个问题

我也有同样的问题。如果通过 apt 安装了第一个 nodejs,然后使用 nodejs.org 中的 tar.gz,那么必须删除位于 /usr/lib/node_modules中的文件夹。

当我重新排列一个项目的文件夹结构时,也遇到了类似的问题。我尝试了这个帖子中给出的所有提示,但没有一个奏效。 在进一步检查之后,我发现我忘记将一个重要的隐藏文件复制到新目录中。那是

。角-cli。 json

在我复制了这个文件之后,所有文件都按照预期运行。

在将一个工作项目移动到文件系统上的一个新子目录后,我遇到了一个非常类似的问题。事实证明,我没有把名为 .angular-cli.json的文件连同其他文件一起移动到子文件夹中。注意到这一点并将文件移动到子目录后,一切恢复正常。

对我来说,仅仅运行下面的命令是不够的(尽管这是有效的第一步) :

npm install -g typescript

下面的命令正是您所需要的(我认为删除 node _ module 也可以,但是下面的命令更快)

npm link typescript

运行‘ npm install’它会安装所有必要的 pkg。

如果使用 yarn而不是 npm,可以通过运行以下命令为该工作区安装 typescript包:

yarn add typescript

或者你可以在全球范围内安装:

sudo yarn global add typescript

可用于任何项目。

如果你没有特别的需要,我建议在本地安装。

新机场管理系统安装方法

npm install --global typescript # Global installation
npm install --save-dev typescript # Local installation

纱线安装方法

yarn global add typescript # Global installation
yarn add --dev typescript # Local installation

如果您已经从 git 或其他地方克隆了项目,那么首先应该键入 npm install

运行: 如果全局安装,则为 npm link typescript

但是如果您没有安装类型脚本,请尝试以下命令: npm install typescript

最好的办法是: npm installnpm i

这样将添加所有依赖项。

我在使用 npm run start-dev时遇到了与我的 package.json ("start-dev": "nodemon src/index.ts")配置相同的问题。当我使用 nodemon src/index.ts在 cmd 工作刚刚好,但使用 npm run start-dev我必须使用 npm link typescript,它解决了问题。