2015-12-21 53 views
6

Data una classe dattiloscritto che è namespace come modulo TS, in un file CoolApps.Utilities.ts:Come importare una classe dattiloscritto namespace in angolare 2

module CoolApps { 
     export class Utilities { 
      myMethod(){ 
       alert("something awesome"); 
      } 
     } 
    } 

La classe lavora in una normale applicazione, ma dattiloscritto Sto cercando di capire il modo corretto di fare riferimento a questa classe in Angular 2. Come posso utilizzarlo in un'app Angular 2 (Ionic 2 nel caso)? Finora il seguente non si risolve, quindi sono probabilmente ricevendo lo sbagliata sintassi:

import {Page} from 'ionic-framework/ionic'; 
import {Utilities} from '../../core/CoolApps.Utilities'; 

Usare un riferimento in questo modo permetterà l'editor per vedere il codice valido, ma angolare non può risolverlo (forse importazione funziona solo per i moduli specifici angolari):?

///<reference path="../../core/mapping/OCM.Mapping.ts"/> 

risposta

5

Import:

import {CoolApps} from '../../core/CoolApps.Utilities'; 

esempio di utilizzo Classe

let util : CoolApps.Utilities = new CoolApps.Utilities(); 

È possibile anche rimuovere dichiarazione del modulo da CoolApps.Utilities.ts e trasformare l'importazione in questo modo:

import * as CoolApps from '../../core/CoolApps.Utilities'; 
+0

Che ne dite se il namespacing CoolApps è diviso in più file, ad esempio, CoolApps.ImageProcessing o CoolApps.PhotoUpload? Non sei proprio sicuro se vale la pena preservare il namespacing nei moduli? –

Problemi correlati