我是TypeScript的新手。这里有一个片段:
/// <reference path="typings/node/node.d.ts" />
const
fs = require('fs'),
spawn = require('child_process').spawn,
filename = process.argv[2];
为什么在这种情况下需要///
线路?我原以为只有进口产品才需要它。
另一方面,这里有另一个片段:
/// <reference path="typings/tsd.d.ts" />
import fs = require('fs');
import should = require('should');
var parse = require('csv-parse');
在这种情况下,"csv parse"没有安装tsd文件(在打字符/中),也没有在tsd.json中列出,但那一行没有给出错误?
为什么在这种情况下需要///行?
不再建议使用reference
注释。这些是之前的,有类似tsconfig.json
的东西:https://github.com/TypeStrong/atom-typescript/blob/master/docs/tsconfig.md这些是为了告诉IDE哪些其他文件需要成为编译上下文的一部分。
"csv parse"没有安装tsd文件(在typeings/中),也没有在tsd.json中列出,但那一行没有给出错误?
这是因为您在var parse = require('csv-parse');
中使用的是var/require
,而不是import/require
。
如果使用import/require
,则会出现错误。require
是node.d.ts
中定义的函数,这意味着var/require
是允许的,但不能像import/require
那样进行类型检查。