L'assignation d'importation ne peut pas être utilisée lorsque vous ciblez les modules ECMAScript 2015

je suis en train d'utiliser le follwing ligne:

import Clipboard = require('clipboard');

et j'obtiens l'erreur suivante:

   [default] c:xampphtdocsisitperfectnode_modulesangular2-clipboardsrcclipboard.directive.ts:2:0 
Import assignment cannot be used when targeting ECMAScript 2015 modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.

L'erreur est dans cette ligne:

import Clipboard = require('clipboard');

j'ai essayé:

import * as Clipboard from 'clipboard';

et quelques autres variations mais n'a pas pu trouver comment le réparer.

j'utilise typescript 2.0.0

des idées?

18
demandé sur maxisam 2016-09-23 18:08:40

4 réponses

j'ai été confronté au même problème que vous.

Dans le tsconfig.json le fichier, je l'ai remplacé:

"module": "es6"

"module": "commonjs"
20
répondu Shashikant Pandit 2018-04-12 09:58:18

j'ai eu le même problème et l'évolution de:

import * as myGlobals from "../globals";

résolu le problème. mondial.le fichier ts est dans le dossier principal' app', et je le charge à partir du sous-dossier'services'.

8
répondu KrystianC 2016-10-04 08:07:31

dans le cas où vous utilisez un CLI angulaire: j'ai pu compiler mon projet après avoir défini la valeur de modulees2016 dans le fichier src/tsconfig.app.json.

5
répondu Leukipp 2017-05-26 08:58:48

essayez de définir module comme commonjs dans tsconfig

vous pouvez essayer cet exemple en utilisant webpack ici

0
répondu maxisam 2016-10-05 17:13:12