2016-02-05 18 views
11

Sto provando a eseguire il bootstrap di un'applicazione Web utilizzando TypeScript e jspm & system.js per il caricamento del modulo. Non sto andando molto lontano. Dopo l'installazione JSPM, e di utilizzarlo per installare jQuery:jspm/jQuery/TypeScript - il modulo "jquery" non ha esportazione predefinita

jspm install jquery 

E i principi fondamentali:

<script src="jspm_packages/system.js"></script> 
<script src="config.js"></script> 
<script> 
     System.import('main'); 
</script> 

main.ts:

import $ from "jquery"; 

export class Application { 
    constructor() { 
     console.log($); 
    } 
} 

Il dattiloscritto non compilerà perché "Module ' jquery 'non ha esportazione predefinita

Il file config.js generato ha la mappatura corretta: "jquery": "npm: jquery @ 2.2.0"

+1

Forse si è tentato 'import * come $ da "jquery"; '? –

+0

Grazie che funziona! Se lo invii come risposta, posso accettarlo. – user888734

+0

Questo ha funzionato per me! – Dan

risposta

41

Se il modulo non dispone di un'esportazione di default, è possibile importare il modulo completo come oggetto: import * as $ from "jquery";

o importazione di nome esportazioni: import { ajax, css } from "jquery";

+1

Le esportazioni con nome non funzionano. Il jQuery del modulo non ha un membro esportato 'css'. – mradzinski

+0

Non dimenticarti di eseguire: npm installa jquery. – user321