2016-05-07 11 views
3

Ich bin ein wenig verwirrend wie diese system-config.ts konfiguriert ist und jetzt versuche ich Material2 einzubeziehen Code in Angular Quick Start Bundle, aber es hat nicht funktioniert.Angular2 - Wie konfiguriert man die system-config.ts, wenn neue Bibliotheken wie angular2-material2 Paket geplant sind

In material2 github, es zeigt, müssen unten Konfiguration in der System-config.ts hinzufügen, aber nicht in der Lage, eine Lösung zu finden. Unten ist die Material2-Abhängigkeit.

// The core package is required as a peerDependency for other components. 
'@angular2-material/core': { 
    format: 'cjs', 
    defaultExtension: 'js', 
    main: 'core.js' 
}, 
'@angular2-material/checkbox': { 
    format: 'cjs', 
    defaultExtension: 'js', 
    main: 'checkbox.js' 
},// 

Und in angular2 schnellen Start, es sieht aus wie als unten,

(function(global) { 

    // map tells the System loader where to look for things 
    var map = { 
    'app':      'app', // 'dist', 
    'rxjs':      'node_modules/rxjs', 
    'angular2-in-memory-web-api': 'node_modules/angular2-in-memory-web-api', 
    '@angular':     'node_modules/@angular' 
    }; 

    // packages tells the System loader how to load when no filename and/or no extension 
    var packages = { 
    'app':      { main: 'main.js', defaultExtension: 'js' }, 
    'rxjs':      { defaultExtension: 'js' }, 
    'angular2-in-memory-web-api': { defaultExtension: 'js' }, 
    }; 

    var packageNames = [ 
    '@angular/common', 
    '@angular/compiler', 
    '@angular/core', 
    '@angular/http', 
    '@angular/platform-browser', 
    '@angular/platform-browser-dynamic', 
    '@angular/router', 
    '@angular/router-deprecated', 
    '@angular/testing', 
    '@angular/upgrade', 
    ]; 

    // add package entries for angular packages in the form '@angular/common': { main: 'index.js', defaultExtension: 'js' } 
    packageNames.forEach(function(pkgName) { 
    packages[pkgName] = { main: 'index.js', defaultExtension: 'js' }; 
    }); 

    var config = { 
    map: map, 
    packages: packages 
    } 

    // filterSystemConfig - index.html's chance to modify config before we register it. 
    if (global.filterSystemConfig) { global.filterSystemConfig(config); } 

    System.config(config); 

})(this); 

Auch andere als das, Muss ich etwas index.html Seite hinzufügen müssen? Ältere Versionen von angular2, ich konnte es konfigurieren, aber wenn die Konfiguration in neue ts-Datei verschoben wird, konnte ich nicht. Bitte hilf mir.

Antwort

5

Do

var packages = { 
    'app': { 
     main: 'main.js', 
     defaultExtension: 'js' 
    }, 
    'rxjs': { 
     defaultExtension: 'js' 
    }, 
    'angular2-in-memory-web-api': { 
     defaultExtension: 'js' 
    }, 
    '@angular2-material/core': { 
     format: 'cjs', 
     defaultExtension: 'js', 
     main: 'core.js' 
    }, 
    '@angular2-material/checkbox': { 
     format: 'cjs', 
     defaultExtension: 'js', 
     main: 'checkbox.js' 
    } 
}; 

Sie sind verwirrt vielleicht gerade deshalb packageNames aber wenn man darunter aussehen gibt es eine Schleife, die

gerade ist jedes packageNames Mitglied zu packeges Objekt hinzufügen und geben Standardwerte

{ main: 'index.js', defaultExtension: 'js' }.

+1

Vielen Dank Singh !. Es hat funktioniert und ich habe diesen Punkt verstanden. – siva

+1

@siva sollten Sie dies als die akzeptierte Antwort dann markieren. – Splaktar

Verwandte Themen