2015-12-21 4 views
6

eine Typoskript Klasse gegeben, die als TS-Modul, in einer Datei CoolApps.Utilities.ts Namespace ist:Wie ein Namespace Typoskript Klasse für den Import in Angular 2

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

Die Klasse in einer normalen Typoskript App funktioniert aber Ich versuche herauszufinden, wie man diese Klasse korrekt in Angular 2 referenziert. Wie verwende ich das in einer Angular 2 App (Ionic 2 in diesem Fall)? Bisher ist die folgende nicht behebt, so bin ich wahrscheinlich die Syntax falsch bekommen:

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

Referenz verwendet wie erlaubt so der Herausgeber der Code als gültig zu sehen, aber Angular kann es nicht lösen (vielleicht Import funktioniert nur für Angular spezifische Module):

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

Antwort

5

Import:

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

Klasse Verwendungsbeispiel

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

Sie auch Moduldeklaration von CoolApps.Utilities.ts und Transformation der Import wie folgt entfernen:

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

Wie wäre es, wenn die CoolApps Namespacing aufgeteilt auf mehrere Dateien, zum Beispiel CoolApps.ImageProcessing oder CoolApps.PhotoUpload? Nur nicht sicher, ob der Namespace in Module überhaupt noch erhaltenswert ist? –