我想将服务器端呈现的配置作为ES6模块传递给可以导入它的TypeScript应用程序。使用SystemJS模块加载器。
配置模块直接在index.html中设置:
import { foo } from 'config';
然后在main.ts
{{1}}
这在浏览器中有效,因为SystemJS识别配置模块,但TypeScript编译器会抱怨:
无法找到模块' config'。
如何告诉TypeScript关于'外部' index.html中定义的自定义模块?
答案 0 :(得分:2)
如果config
不是typescript模块(没有类型定义等),那么就不能像这样导入它(它看起来像ES6导入,但实际上它不是一个)。因此,要么为它写d.ts
文件并将其放在tsc
可以找到它的地方,要么尝试使用let config = require('config')
以“自由格式”的形式导入它。然后你可以使用它,但没有任何类型的提示和检查。