2016-03-20 4 views
1

Ich habe ein Problem mit meiner Typoskript Datei compilling:Angular 2: wie man `--module System --experimentalDecorators` Fahnen zur Verfügung stellt?

app/app.component.ts

import {Component} from 'angular2/core'; 

@Component({ 
    selector: 'my-app', 
    template: '<h1>Messenger</h1>' 
}) 
export class AppComponent { } 

Typoskript Compiller

Error:(1, 1) TS1148: Cannot compile modules unless the '--module' flag is provided. 
Error:(1, 25) TS2307: Cannot find module 'angular2/core'. 
Error:(7, 14) TS1219: Experimental support for decorators is a feature that is subject to change in a future release. Specify '--experimentalDecorators' to remove this warning. 

Bereitstellung von Fahnen in tsconfig.json zurück tut nichts.

tsconfig.json

{ 
    "compilerOptions": { 
    "target": "es5", 
    "module": "system", 
    "moduleResolution": "node", 
    "sourceMap": true, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "removeComments": false, 
    "noImplicitAny": false 
    }, 
    "exclude": [ 
    "node_modules", 
    "typings/main", 
    "typings/main.d.ts" 
    ] 
} 

Mein Projektbaum:

. 
├── app 
├── node_modules 
├── typings 
├── application.js 
├── messages.js 
├── package.json 
├── tsconfig.json 
└── typings.json 

Ich verwende RubyMine 8 als IDE

Was mache ich falsch? Gibt es eine andere Möglichkeit, meine Flaggen zu liefern?

+1

Ein paar Ideen: (1) stellen Sie sicher, dass Sie mindestens Typoskript 1.5 haben, wenn Unterstützung für tsconfig.json hinzugefügt wurde, (2) stellen Sie sicher, dass Sie TSC nicht von einem Ordner aufrufen, der ein Elternteil Ihres Projekts ist (TSC sucht nach einer Datei tsconfig.json, aber nicht nach unten.) (3) Stellen Sie sicher, dass Sie TSC nicht mit Eingabedateien in der Befehlszeile aufrufen (bewirkt, dass tsconfig.json ignoriert wird) Geben Sie einige Details darüber, wie Sie tsc ausführen? – gxclarke

+0

Welchen TypeScript-Compiler verwenden Sie? Der mit RubyMine oder mit der Befehlszeile gebündelt? – x0x

Antwort

2

Wenn Sie die mitgelieferte Typoskript Compiler verwenden, gehen Sie zu File > Settings > Languages & Frameworks > TypeScript

Sie auf der set options manually Radiobutton klicken können, und die Argumente in dem Command line options Textfeld eingeben. See the list of available arguments

webstorm typescript configuration

Dies ist, wie Sie Befehlszeilenargumente liefern.

Use tsconfig.json funktioniert für mich ohne Angabe von Befehlszeilenargumenten.

0

Ich könnte etwas fehlen, aber ich glaube, es sind zwei Fehler in der ersten Zeile der app.component.ts

import {Component} from 'angular2/core'; 

import { Component } from '@angular2/core'; 

Der Raum zwischen den Importen sein sollte und die geschweiften Klammern und das '@' Zeichen vor eckig2 haben mir sehr viel Schmerz verursacht.

+0

Ich fragte diese Frage, wenn Angular 2 eine frühe Beta war, so könnte die Syntax ändern. – Viktor

Verwandte Themen