打字稿,需要模块作为类
Posted
技术标签:
【中文标题】打字稿,需要模块作为类【英文标题】:Typescript, require module as class 【发布时间】:2015-05-01 08:51:19 【问题描述】:我正在使用在我的打字稿代码中使用 AMD 模块的现有 js 库。我想使用 javascript 类作为我的 Typescript 类的基础。这就是我想要做的:
着名的.js
define('famous/core/View',['require','exports','module'],function(require, exports, module)
function View()
...
...
module.exports = View;
);
查看.d.ts
声明模块“著名/核心/视图”
AppView.ts
import View = require(' Famous/core/View');
类 AppView 扩展视图
export = AppView;
但它显示“找不到名称 'View'”。我想这是合乎逻辑的,因为模块不是类,所以它不起作用,但我不知道另一种方式。
【问题讨论】:
【参考方案1】:进一步分析,这似乎纯粹是一个需求配置问题。它不应该与class
和module
有任何关系。你确定你的路径是正确的并且你有一个config.ts
require 配置文件吗?
【讨论】:
js 代码是我正在使用的库的一部分。这超出了我的控制范围【参考方案2】:您需要在 View.d.ts 中定义一个类并使用export =
。例如:
declare module "famous/core/View"
class View
// TODO define members of View
export = View;
【讨论】:
太棒了。我希望当我在模块中声明一个类时,我需要像这样使用它: import View = require(' Famous/core/View'); var view = new View.View(); .但它没有,它完美地工作,谢谢!以上是关于打字稿,需要模块作为类的主要内容,如果未能解决你的问题,请参考以下文章