无法找到打字模块

时间:2016-06-17 12:03:46

标签: typescript gulp browserify

我只想在当前项目中使用外部模块,所以我用npm安装了typings。我下载了d3并遇到了问题。

Application.ts文件中我有:

import * as d3 from "d3"

Sublime Text 3强调"d3"未找到。我可以用tsconfig编译它,如下所示:

{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es5",
        "noImplicitAny": true,
        "removeComments": true,
        "preserveConstEnums": true,
        "outDir": "built"
    },
    "files": [
        "src/Application.ts",
        "typings/index.d.ts"
    ]
}

但是,当我尝试使用browserify时,它会告诉我Cannot find module 'd3' from 'path_to_project\built'

理想情况下,我想改进我的gulpfile任务来处理它。

gulp.task("default", function () {
    return browserify({
        basedir: ".",
        debug: true,
        entries: ["src/Application.ts"],
        cache: {},
        packageCache: {}    
    })
    .plugin(tsify)
    .bundle()
    .pipe(source('bundle.js'))
    .pipe(gulp.dest("js"));
});

我做错了什么?我的typings.json是:

{
  "dependencies": {
    "d3": "registry:npm/d3#3.0.0+20160211003958"
  }
}

更新

我通过npm i d3下载了d3,现在gulp正常工作。但是有没有可能选择browserify查找模块的目录?似乎模块必须位于node_modules目录下。

0 个答案:

没有答案