Import szintaxis utalás dgrid származó géppel

szavazat
1

Tanulom géppel és Dojo párhuzamosan és ezt téve én korlátozott megértése AMD. Nem értem, hogyan köti össze a behozatali nyilatkozatot az 3rd party „dgrid / Grid” AMD modul, a dgrid.d.ts csonk nyilatkozatot és a fogyasztó osztályban. 2 nap múlva a hiábavaló erőfeszítés keresem bármilyen eszközzel (hacky vagy AMD a legjobb megoldás), hogy végre a következőket:

MyModule.ts

{
    ...
    var myGrid = new dgrid.Grid( { /*col structure*/}, divId);
    ...
}

Itt van a csonk nyilatkozat fájl dgrid.

dgrid.d.ts (szerkesztett szinkronizálni az Update 1 alább)

module dgrid/Grid
{
    export class Grid
    {
        constructor ( gridStructure: any, elementId: string);
    }
}

Próbáltam a következő referenciák én fogyasztású géppel osztályban, de a Visual Studio kiemeli az „dgrid / Grid” szó pirosan, mert azt hiszem, a TS fordító nem ismeri a klasszikus Dojo dojoConfig, baseURL és dgrid csomag bejelentések a default.htm fájlt.

///<reference path='dgrid.d.ts' />

import Grid = module(dgrid/Grid);

module MyModule
{
   ...
}

Update 1 Mivel kiküldetés olvastam át a 10. fejezet a hivatalos géppel utasítás. Korábban azt elmulasztotta felismerni a jelentőségét modulok bejelentett modul MyType {}, vagy modul „külső / harmadik gyártó” {}. A környezeti nyilatkozat egy külső modul legyen szó.

Háttér:

Megkövetelése nyilatkozata:

require([dgrid/Grid, dojo/domReady!],
    function(Grid){
A kérdést 11/10/2012 13:43
a forrás felhasználó
Más nyelveken...                            


2 válasz

szavazat
1

A következő (kissé megváltozott) változata a kód lefordul számomra:

MyModule.ts

///<reference path='./dgrid.d.ts' />
module MyModule {
    var gridInstance : dgrid.Grid = new dgrid.Grid("test1", "test2");
}

dgrid.d.ts

module dgrid
{
    class Grid
    {   
        constructor ( gridStructure: any, elementId: string);
    }   

}

A ///<reference path='...'/>konstrukció hozza a belső modul dgridbe körét. Raksz a típus nevét az a modul teszi a dolgát.

Válaszolt 11/10/2012 15:45
a forrás felhasználó

szavazat
0

Az első, bár az lenne, hogy ellenőrizze, hogy a fájl a helyszínen úgy gondolja, hogy ez ez a kijelentés, hogy a munka:

///<reference path='dgrid.d.ts' />

A dgrid.d.tsfájl ugyanabban a mappában, mint a modul .ts fájlt?

frissítés:

Ha a modul nyilatkozat a következő:

module dgrid {
    export class Grid {
        constructor ( gridStructure: any, elementId: string) {

        }
    }
}
Válaszolt 11/10/2012 14:52
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more