J'apprends tapuscrit et Dojo en parallèle et cela a exposé ma compréhension limitée de la DMLA. Je ne comprends pas comment lier ensemble une déclaration d'importation à la 3ème partie « dgrid / Grille » Module AMD, ma dgrid.d.ts déclaration de souche et ma classe consommatrice. Après 2 jours de gaspillage d'efforts que je cherche tous les moyens (ou hacky les meilleures pratiques amd) pour exécuter les éléments suivants:
MyModule.ts
{
...
var myGrid = new dgrid.Grid( { /*col structure*/}, divId);
...
}
Voici mon dossier de déclaration de stub pour dgrid.
dgrid.d.ts (édité pour la synchronisation avec une mise à jour ci - dessous)
module dgrid/Grid
{
export class Grid
{
constructor ( gridStructure: any, elementId: string);
}
}
J'ai essayé les références suivantes dans ma classe consommatrice dactylographiée mais Visual Studio souligne la « dgrid / Grille » littérale en rouge parce que je suppose que le compilateur TS ne connaît pas le Dojo classique dojoConfig, les déclarations de paquet baseUrl et dgrid dans le fichier default.htm.
///<reference path='dgrid.d.ts' />
import Grid = module(dgrid/Grid);
module MyModule
{
...
}
Mise à jour 1 Depuis l' affichage j'ai lu le chapitre 10 dans le manuel dactylographiée officiel. Auparavant , je l' avais pas reconnu l'importance des modules déclarés en tant que module MyType {} ou module « externe / thirdparty » {}. Une déclaration ambiante pour un module externe doit être un littéral.
Contexte:
- J'utilise Dojo 1.8.0 référencé à partir ajax.googleapis.com
- Le JavaScript dgrid est hébergé localement dans / js / dgrid
- Je suis en train de suivre de près la page du didacticiel dgrid SitePen montrant le chargement classique AMD require () de dgrid http://dojofoundation.org/packages/dgrid/tutorials/hello_dgrid http://dojofoundation.org/packages/dgrid/tutorials/hello_dgrid /demo/simple.html
Require:
require([dgrid/Grid, dojo/domReady!],
function(Grid){













