需要一个带index.js的文件夹

时间:2014-01-24 03:37:14

标签: node.js typescript

我正在尝试通过指定文件夹名称来索取带有index.js的文件夹

import xyz = require("./xyz");

并获得编译错误“无法解析外部模块xyz。模块不能别名为非模块类型。

如果我指定索引

import xyz = require("./xyz/index");

它有效。

如果我这样做

var xyz = require("./xyz");

它有效,但我在xyz上没有智能感知。

Typescript不支持该功能吗?

1 个答案:

答案 0 :(得分:2)

不,TypeScript不遵循Node.js的模块解析规则,因为它们非常特定于该平台。 TypeScript支持多个不遵循Node.js约定的平台。

TypeScript规范说明了相对模块的分辨率:

  

如果import声明指定了相对外部模块名称,则相对于引用模块的文件路径的目录解析名称。程序必须包含具有生成的文件路径的模块,否则会发生错误。例如,在具有文件路径的模块中   'C:/ src / ui / main',外部模块用文件命名'./editor'和'../lib/io'参考模块   路径'C:/ src / ui / editor'和'C:/ src / lib / io'。