EFB Sample - tsconfig.json, 'Missing a name for object member.' on line 2

In MSFS2024 Developer mode when I open the file: EFBTemplateAppProject.xml, to build the EFB Sample, I get the following message:

CopyCompilerCommand_G | Malformed JSON file ‘C:\MSFS 2024 SDK\Samples\DevmodeProjects\EFB\PackageSources\TemplateApp\tsconfig.json’ ‘Missing a name for object member.’ on line 2: ’ Projects /

If I build anyway, I get a message indicating that I have a bad or missing : Layout.json file.

I have no idea how to correct this, please??

“File JSON is not valid […] ‘You have a name for the member of the oggetto.’” alla riga 2: ’ Progetti /*

This causes an invalid comment in JSON format. In JSON there are no comments, but your file tsconfig.json contains several comments /* … */ and // …

Even if TypeScript accepts these comments in the answer to the tsconfig.json file, MSFS will use a very rigid JSON parser, which is not accepted.

Please review all your comments in the tsconfig.json file. Check out a proper and valid version:

{
“compilerOptions”: {
“incremental”: false,
“target”: “es2017”,
“jsx”: “react”,
“experimentalDecorators”: true,
“jsxFactory”: “FSComponent.buildComponent”,
“jsxFragmentFactory”: “FSComponent.Fragment”,
“module”: “ES2015”,
“moduleResolution”: “node”,
“rootDir”: “.”,
“baseUrl”: “.”,
“resolveJsonModule”: true,
“noEmit”: true,
“allowJs”: false,
“declaration”: false,
“declarationMap”: false,
“sourceMap”: false,
“removeComments”: false,
“allowSyntheticDefaultImports”: true,
“esModuleInterop”: true,
“forceConsistentCasingInFileNames”: true,
“strict”: true,
“skipLibCheck”: true
},
“exclude”: [“node_modules”, “dist”, “tsconfig.json”],
“ts-node”: {
“compilerOptions”: {
“module”: “CommonJS”
}
}
}

Thanks, I will follow your recommendations and keep you posted.

Hopefully Asobo is following this chat and will make the changes in their EFB sample code.

It worked, just removing the comments did it. Thanks, it is much appreciated.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.