Typescript模块,需要外部node_modules

Mfrachet

我需要在一个简单的打字稿文件中使用一个简单的node_module,但似乎编译器不想获取它。

这是我简单的ts文件:

import glob = require('glob');
console.log(glob);

而且我有这个错误:

[13:51:11] Compiling TypeScript files using tsc version 1.5.0
[13:51:12] [tsc] > F:/SkeletonProject/boot/ts/Boot.ts(4,23): error TS2307: Cannot find external module 'glob'.
[13:51:12] Failed to compile TypeScript: Error: tsc command has exited with code:2

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: Failed to compile: tsc command has exited with code:2

npm ERR! [email protected] start: `node compile && node ./boot/js/Boot.js`
npm ERR! Exit status 8
npm ERR!
npm ERR! Failed at the [email protected] start script.

但是,当我在同一脚本中使用简单的声明时,它会起作用:

var x = 0;
console.log(x); // prints  0 after typescript compilation

在这种情况下我怎么了?

编辑:

这是我的gulp文件:

var gulp = require('gulp');
var typescript = require('gulp-tsc');


gulp.task('compileApp', ['compileBoot'], function () {
    return gulp.src(['app/src/**/*.ts'])
        .pipe(typescript())
        .pipe(gulp.dest('app/dist/'))
});

gulp.task('compileBoot', function () {
    return gulp.src(['boot/ts/*.ts'])
        .pipe(typescript({
            module:'commonjs'
        }))
        .pipe(gulp.dest('boot/js/'))
});

gulp.start('compileApp');

谢谢前进

谢谢前进

芬顿

您使用的是正确的语法:

import glob = require('glob');

但是错误:Cannot find external module 'glob'指出您正在使用特殊情况。

默认情况下,编译器正在寻找glob.ts,但是在您的情况下,您使用的是节点模块,而不是您编写的模块。因此,该glob模块将需要特殊处理...

如果glob是普通的JavaScript模块,则可以添加一个文件,该文件的名称glob.d.ts描述了该模块的类型信息。

glob.d.ts

declare module "glob" {
    export class Example {
        doIt(): string;
    }
}

应用程序

import glob = require('glob');

var x = new glob.Example();

某些Node模块已经包含.d.ts在包中,在其他情况下,您可以从Definitely Typed中获取它

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

TypeScript:从node_modules导入外部模块

来自分类Dev

浏览器,翡翠。需要从node_modules内部的模块中获取玉石。

来自分类Dev

浏览器,翡翠。需要从node_modules内部的模块中获取玉石。.奇怪的行为

来自分类Dev

找不到模块“ node_modules / formidable”

来自分类Dev

找不到模块“ node_modules / formidable”

来自分类Dev

为什么TypeScript无法找到安装在“ node_modules”中的模块?

来自分类Dev

在Typescript内部模块中需要外部模块

来自分类Dev

node_modules中存在的模块的“找不到所需的模块”

来自分类Dev

找不到模块'socket.io/node_modules/redis'

来自分类Dev

Babelify在从node_modules导入模块时抛出ParseError

来自分类Dev

找不到模块'mongodb / node_modules / bson'

来自分类Dev

使用babel从node_modules导入模块但失败

来自分类Dev

Angular2和TypeScript导入node_modules

来自分类Dev

./node_modules/node-pty/build/Release/pty.node模块解析失败:意外字符''

来自分类Dev

需要外部输入的Node.js单例模块模式

来自分类Dev

防止 node_modules 中的作用域 node_modules

来自分类Dev

节点模块gitignores自己的node_modules目录,破坏了Heroku的部署

来自分类Dev

将node_modules文件夹用于自定义模块

来自分类Dev

错误:在Mac上找不到模块'socket.io/node_modules/redis'

来自分类Dev

如何修复“模块构建失败(来自./node_modules/postcss-loader/src/index.js)”

来自分类Dev

找不到模块:无法解析'./node_modules/@material-ui/core/IconButton'

来自分类Dev

即使在node_modules中,也找不到ag-grid-vue模块

来自分类Dev

模块构建失败(来自./node_modules/babel-loader/lib/index.js)Vue Js

来自分类Dev

导入映像时,TS无法从node_modules中找到模块

来自分类Dev

错误:在Mac上找不到模块'socket.io/node_modules/redis'

来自分类Dev

无法加载与spookyjs放在同一父node_modules目录中的casperjs模块

来自分类Dev

node_modules文件夹中的许多未知模块

来自分类Dev

在模块中使用npm3无法获取父node_modules

来自分类Dev

UnableToResolveError:无法解析模块`./node_modules/react-native/packager/src/components` React Native

Related 相关文章

  1. 1

    TypeScript:从node_modules导入外部模块

  2. 2

    浏览器,翡翠。需要从node_modules内部的模块中获取玉石。

  3. 3

    浏览器,翡翠。需要从node_modules内部的模块中获取玉石。.奇怪的行为

  4. 4

    找不到模块“ node_modules / formidable”

  5. 5

    找不到模块“ node_modules / formidable”

  6. 6

    为什么TypeScript无法找到安装在“ node_modules”中的模块?

  7. 7

    在Typescript内部模块中需要外部模块

  8. 8

    node_modules中存在的模块的“找不到所需的模块”

  9. 9

    找不到模块'socket.io/node_modules/redis'

  10. 10

    Babelify在从node_modules导入模块时抛出ParseError

  11. 11

    找不到模块'mongodb / node_modules / bson'

  12. 12

    使用babel从node_modules导入模块但失败

  13. 13

    Angular2和TypeScript导入node_modules

  14. 14

    ./node_modules/node-pty/build/Release/pty.node模块解析失败:意外字符''

  15. 15

    需要外部输入的Node.js单例模块模式

  16. 16

    防止 node_modules 中的作用域 node_modules

  17. 17

    节点模块gitignores自己的node_modules目录,破坏了Heroku的部署

  18. 18

    将node_modules文件夹用于自定义模块

  19. 19

    错误:在Mac上找不到模块'socket.io/node_modules/redis'

  20. 20

    如何修复“模块构建失败(来自./node_modules/postcss-loader/src/index.js)”

  21. 21

    找不到模块:无法解析'./node_modules/@material-ui/core/IconButton'

  22. 22

    即使在node_modules中,也找不到ag-grid-vue模块

  23. 23

    模块构建失败(来自./node_modules/babel-loader/lib/index.js)Vue Js

  24. 24

    导入映像时,TS无法从node_modules中找到模块

  25. 25

    错误:在Mac上找不到模块'socket.io/node_modules/redis'

  26. 26

    无法加载与spookyjs放在同一父node_modules目录中的casperjs模块

  27. 27

    node_modules文件夹中的许多未知模块

  28. 28

    在模块中使用npm3无法获取父node_modules

  29. 29

    UnableToResolveError:无法解析模块`./node_modules/react-native/packager/src/components` React Native

热门标签

归档