Bonjour, je suis confronté à ce problème ici: la configuration la plus simple de TypeScript Node.js ne fonctionne pas - erreur TS2307: Impossible de trouver le module 'fs'
Et j'ai aussi essayé cette solution mais je ne peux pas la faire fonctionner
mes dépendances:
"dependencies": {
"@angular/animations": "^4.0.0",
"@angular/common": "^4.0.0",
"@angular/compiler": "^4.0.0",
"@angular/core": "^4.0.0",
"@angular/forms": "^4.0.0",
"@angular/http": "^4.0.0",
"@angular/platform-browser": "^4.0.0",
"@angular/platform-browser-dynamic": "^4.0.0",
"@angular/router": "^4.0.0",
"@swimlane/ngx-charts": "^6.1.0",
"core-js": "^2.4.1",
"d3": "^4.9.x",
"mobx": "^3.3.1",
"mobx-angular": "^2.0.0",
"mobx-remotedev": "^0.2.8",
"rxjs": "^5.0.1",
"zone.js": "^0.8.4"
},
"devDependencies": {
"@angular/cli": "1.4.1",
"@angular/compiler-cli": "^4.0.0",
"@angular/language-service": "^4.0.0",
"@types/jasmine": "~2.8.3",
"@types/jasminewd2": "~2.0.2",
"@types/node": "^9.4.0",
"codelyzer": "^4.0.1",
"jasmine-core": "~2.8.0",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~2.0.0",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "^1.2.1",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~5.1.2",
"ts-node": "~4.1.0",
"tslint": "~5.9.1",
"tslint-config-prettier": "^1.6.0",
"TypeScript": "~2.5.3"
}
le tsconfig.json
{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"types": [
"node"
],
"lib": [
"es2017",
"dom"
]
},
"exclude": [
"node_modules",
"dist"
],
"filesGlob": [
"./node_modules/@types/**/*.d.ts"
]
}
et dans le code quand j'essaye:
import * as fs from 'fs';
export const environment = {
production: false,
hmr: true
};
je reçois:
ERROR in .../src/environments/environment.hmr.ts (1,21): Cannot find module 'fs'.
Toute aide serait appréciée. Merci
J'ai trouvé la solution:
import { writeFileSync, readFileSync } from 'fs';
ça fonctionne maintenant
Je sais que je suis probablement en retard mais je faisais face au même problème. Enfin, j'ai un travail à faire si vous voulez essayer. Dans votre tsconfig.json, ajoutez "node_modules/@ types/node" dans "typeRoots" comme vous pouvez le voir dans la configuration ci-dessous:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types",
"node_modules/@types/node"
],
"lib": [
"es2018",
"dom"
]
}
}