2

我无法导入 i18next 的一个原因是 i18next.d.ts 文件没有

declare module "i18next" {
    export = i18next;
}

最后,就像 jquery.d.ts 和 knockout.d.ts 一样。它只有

declare var i18next: I18nextStatic;

因此,当我尝试使用导入我的 TypeScript 文件时

import i18next = require('i18next'); 

它将barf:无法加载外部模块模块不能别名为非模块类型

我不知道为什么肯定类型的项目以这种方式组成 d.ts 文件。而且我不知道 declare module 是否是一个好的解决方案。

有人请帮忙。

4

1 回答 1

1

您可能需要填充 i18next 库,以便 RequireJS 将其定义为模块。

这里有更多关于 RequireJS 站点的信息:http ://requirejs.org/docs/api.html#config-shim

shim : {
   'i18next' : {
      exports : 'i18next'
    }
}
于 2014-08-05T08:25:04.513 回答