2016-04-11 7 views
1

Ich kann meine angular 2-Anwendung nicht kompilieren, wenn sie in der tsconfig.json-Datei auf es5 gesetzt ist. Wenn ich es in es6 ändere, verschwinden alle meine Compilerfehler.Angular2: Viele Fehler beim Kompilieren nach ES5

TSconfig:

"compilerOptions": { 
    "target": "es5", 
    "module": "system", 
    "declaration": false, 
    "noImplicitAny": false, 
    "removeComments": true, 
    "noLib": false, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "sourceMap": true, 
    "moduleResolution": "node" 
    }, 
    "files": [ ... 

Index.HTML

<script src="~/node_modules/systemjs/dist/system.src.js"></script> 
    <script src="~/node_modules/es6-shim/es6-shim.min.js"></script> 
    <script src="~/node_modules/angular2/bundles/angular2-polyfills.js"></script> 
    <script src="~/node_modules/moment/min/moment.min.js"></script> 
    <script> 
     System.config({ 
      defaultJSExtensions: true, 
      baseURL: '/ECAV.Admin/node_modules', 
      packages: { 
       'app': { format: 'register', defaultExtension: 'js' }, 
       'rxjs': { defaultExtension: 'js' } 
      }, 
      paths: { 
       'angular2/*': 'angular2/*', 
       'rxjs': 'rxjs/bundles/Rx.js', 
       'linqsharp': 'linqsharp/built/linqsharp', 
       'highcharts': 'highcharts', 
       'ng2-highcharts': 'ng2-highcharts/ng2-highcharts', 
       'lodash': 'lodash/lodash'    
      }, 
      map: { 
       moment: 'moment/moment.js' 
      } 
     }); 
    </script> 
    <script src="/Admin/node_modules/rxjs/bundles/Rx.js"></script> 
    <script src="/Admin/node_modules/angular2/bundles/angular2.dev.js"></script> 
    <script src="/Admin/node_modules/lodash/lodash.js"></script> 

Beispiel Fehler (es gibt viele davon aus Bibliotheksklassen):

Build: Cannot find name 'Set'. Admin C:\dev\ecav\Admin\node_modules\angular2\src\common\directives\ng_class.d.ts 72 

Einer meiner requirments ist um diese Website in IE11 zu betreiben, brauche ich es5.

Jede Hilfe würde sehr geschätzt werden.

+0

Warum definieren Sie einen 'files' Block in Ihre tsconfig.json Datei und was enthält er? Vielen Dank! –

+0

Sie sind Pfade zu den Dateien, die ich in der Ferne haben möchte, da es einige Dateien gibt, die ich aus verschiedenen Gründen, Spezifikationen usw. weglassen möchte. "files": [ "typings/browser.d.ts", "app /boot-main.ts ", Wenn ich jedoch den Dateieintrag entferne, bekomme ich das gleiche Verhalten. Ich kann den Code nicht nach es5 kompilieren. Ich könnte vielleicht einen Babel transpiler in SystemJS verwenden? Danke Thierry :) – KnowHoper

Antwort

Verwandte Themen