angular - Zahrnúť priečinok súborov JSON počas zostavovania


Moja Angular 12 aplikácia - dashboard pre embedded systém - sa spolieha na JSON súbory, ktoré sa používajú počas behu na generovanie formulárov a pod.

Niektoré súbory sú známe pred kompiláciou. Deklaroval som rozhranie, aby som mohol overiť typy ich hodnôt v kóde, a pridal som súbor typings.d.ts, aby som ich deklaroval ako moduly:

declare module 'params.json' {
  const value: IParams;
  export default value;
}

Potom ich vo svojich službách jednoducho zahrniem takto:

import params from 'src/assets/data/params.json';

Takto sa môžem vyhnúť vykonávaniu asynchrónnych HTTP volaní na čítanie súborov. Namiesto toho je ich obsah zahrnutý v mojej aplikácii už počas zostavovania.

Avšak mám problém so zložkou JSON súborov, ktorá môže obsahovať rôzny počet súborov. Skúsil som ísť rovnakou cestou:

declare module 'sensors/*.json' {
  const value: ISensor;
  export default value;
}

Ale potom, ako by som mohol importovať súbory?

V ideálnom svete by som chcel získať Record<string, ISensor> s názvami súborov ako kľúčmi a obsahom súborov JSON ako hodnotami.

Prosím, opýtajte sa ma na viac podrobností, ak otázka nie je dosť jasná.