TypeScript+SystemJS using JSON and Text plugins

3.8k Views Asked by At

Using TypeScript with SystemJS, how can I import a JSON file using plugin-json?

If I write System.import('myjson.json!json').then(...) then it imports it asynchronously and not as a part of System.register([...]).

So, how can I import a JSON file as a part of System.register([...]) and convincing TypeScript to agree to this? (without then Promise syntax).

Note: I'm using the tsc flag -m system


Update:

A possible solution is to use the -m umd option for tsc instead of -m system, then I can do the following:

/// <reference path="typings/requirejs/require.d.ts" />
var myJson = require('myJson.json!json')

However, still waiting for an answer regarding usage of -m system.

1

There are 1 best solutions below

2
On BEST ANSWER

In order to do : import json = require('myJson.json!json') You need to have some .d.ts file with the following:

declare module 'myJson.json!json'{
   var json:any;
   export = json;
}