如何使用具有browserify的打字稿模块?

时间:2014-05-30 14:50:11

标签: typescript reactjs browserify

我是打字稿的新手,我目前正在使用来自browserify的CJS。当我将mixcript添加到混合中时,TSC编译器抱怨要求说

error TS2095: Could not find symbol 'require'

这是我对browerify的切入点

var Hello:any = require('hello.js').Hello;

这是我的hello js文件(上面需要)

var React = require('react');

var Hello = React.createClass({displayName: 'Hello',
    render: function() {
        return React.DOM.div(null, "Hello ", this.props.name);
    }
});

exports.Hello = Hello;

2 个答案:

答案 0 :(得分:7)

您可以通过声明Typescript如何解析外部类来为任何类修复此问题。

幸运的是,已经为大量库做了这个。

将此作为参考包含在您的文件中。

https://github.com/borisyankov/DefinitelyTyped/tree/master/browserify

答案 1 :(得分:4)

感谢@AlexB的回复。将def添加到我的app.ts顶部,就像我在下面显示的那样解决了这个问题

///<reference path='../typings/node.d.ts' />

var Hello:any = require('hello.js').Hello;

<强>更新

值得一提的是......如果您不想/关心输入信息,可以省略如下

declare var require:any;

var Hello:any = require('hello.js').Hello;