Javascript tsconfig.json使用node.js模块的最佳设置是什么?
到目前为止,我在“/src”中有两个文件:Javascript tsconfig.json使用node.js模块的最佳设置是什么?,javascript,node.js,typescript,node-modules,commonjs,Javascript,Node.js,Typescript,Node Modules,Commonjs,到目前为止,我在“/src”中有两个文件:index.ts和setConfig.ts。 导入“fs”和“path”如下: const fs = require('fs'); const path = require('path'); { "compilerOptions": { "target": "es5", "module": "commonjs", "outDir": "./dist/", "rootDir": "./src/", "stri
index.ts
和setConfig.ts
。
导入“fs”和“path”如下:
const fs = require('fs');
const path = require('path');
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"outDir": "./dist/",
"rootDir": "./src/",
"strict": true,
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true
}
}
。。。这就是Typescript显然不喜欢的东西;汇编时说:
src/index.ts:1:7 - error TS2451: Cannot redeclare block-scoped variable 'fs'.
1 const fs = require('fs');
~~
src/setConfig.ts:1:7
1 const fs = require('fs');
~~
'fs' was also declared here.
src/index.ts:2:7 - error TS2451: Cannot redeclare block-scoped variable 'path'.
2 const path = require('path');
~~~~
src/setConfig.ts:2:7
2 const path = require('path');
~~~~
'path' was also declared here.
src/setConfig.ts:1:7 - error TS2451: Cannot redeclare block-scoped variable 'fs'.
1 const fs = require('fs');
~~
src/index.ts:1:7
1 const fs = require('fs');
~~
'fs' was also declared here.
src/setConfig.ts:2:7 - error TS2451: Cannot redeclare block-scoped variable 'path'.
2 const path = require('path');
~~~~
src/index.ts:2:7
2 const path = require('path');
~~~~
'path' was also declared here.
Found 4 errors.
但是当我在setConfig.ts
node中遗漏它时,它会抱怨它不知道“fs”
我的tsconfig.json
如下所示:
const fs = require('fs');
const path = require('path');
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"outDir": "./dist/",
"rootDir": "./src/",
"strict": true,
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true
}
}
那么,为了使编译好的JavaScript正常工作,我还需要添加或执行哪些操作?在
setConfig.ts
模块中添加导出应该可以解决这个问题
// setConfig.ts
export default {
// your exports
};
// Or
export function foo() {}
这就解决了问题,谢谢!我使用了
module.exports=foo(){}
和const setConfig()=require(“./setConfig”)
,它们以前在js中工作过,但现在显然不再在ts中工作了。。。