4

I want to know to import Javascript module in Typescript.

Project

  1. Module is "amd."
  2. Use outFile option for single file.
  3. Control internal module from ///<reference path=''/>

code

app.js

export function func(a, b) {
    return a+b;
}

MainApp.ts

import Stats from "../app";    

class MainApp {

    foo() {
        const f = func(1, 2); // not define (runtime error)
    }
}

error

SyntaxError: Unexpected token export
ReferenceError: define is not defined
Main.js:6667
    at d:\...\Main.js:6667:2
ReferenceError: MainApp is not defined
    at window.onload (d:\...\index.html:18:24)

not found define.

1

1 Answer 1

5

It is possible there is mistake with default exports. Here is working example appropriate to your code structure.

tsconfig.json:

{
    "compilerOptions": {
        "strict": true,
        "allowJs": true,

        "target": "es6",
        "module": "commonjs"
    }
}

app.js:

export function sum(a, b) {
    return a + b;
}

MainApp.ts:

import {sum} from './app';

class MainApp {
    foo() {
        const a = 1;
        const b = 2;

        const result = sum(1, 2);
    }
}

global.d.ts:

declare module '*.js';
1
  • target is not "commonjs".
    – Dubs
    Commented Dec 3, 2018 at 5:39

Not the answer you're looking for? Browse other questions tagged or ask your own question.