在导入之后是什么意味着什么呢?

时间:2016-09-05 10:43:18

标签: typescript

raven documentation for Angular 2提到了以下es6代码段:

import Raven = require('raven-js');  // NOTE: "require" not "from"

他们明确提到了要求,但是我不确定这个陈述实际上做了什么以及记录在哪里。

2 个答案:

答案 0 :(得分:1)

import Raven = require('raven-js'); 

是原始的Typescript导入语法。

现在首选新的ES6样式导入(since TS 1.5

import * as Raven from 'raven-js'

这两个语法导入一个外部库/模块,其类型定义必须可用,作为tsconfig.json中引用的单独定义文件或作为库的一部分,在typings中引用它们输入package.json(应避免///<reference语法)。

请注意,在&'39;要求&#39;环境,例如commonjs,

const Raven = require('raven-js'); 

Raven作为any提供给代码的其余部分(即不会导入定义)。当尝试使用您没有(或确实想要制作)定义的JS库时,这可能很方便。

答案 1 :(得分:0)

带有import的{​​{1}}来自TypeScript自己的模块系统。您可以深入了解here

它还提到了如何使用不同类型的模块语法(CommonJS,Native ES6 Modules等)