我在填写我的TypeScript文件时遇到了麻烦:
应用/ app.component.ts
import {Component} from 'angular2/core';
@Component({
selector: 'my-app',
template: '<h1>Messenger</h1>'
})
export class AppComponent { }
TypeScript 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.
在tsconfig.json中提供标志不会做任何事情。
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"
]
}
我的项目树:
.
├── app
├── node_modules
├── typings
├── application.js
├── messages.js
├── package.json
├── tsconfig.json
└── typings.json
我使用RubyMine 8作为IDE
我做错了什么?还有另一种方式来提供我的旗帜吗?
答案 0 :(得分:2)
如果您使用的是捆绑的TypeScript编译器,请转到File > Settings > Languages & Frameworks > TypeScript
您可以单击set options manually
单选按钮,然后在Command line options
文本框中输入参数。 See the list of available arguments
这是您提供命令行参数的方式。
Use tsconfig.json
在没有提供任何命令行参数的情况下为我工作。
答案 1 :(得分:0)
我可能会遗漏一些东西,但我认为你app.component.ts的第一行有两个错误
import {Component} from 'angular2/core';
应该是
import { Component } from '@angular2/core';
导入和大括号之间的空格以及angular2之前的'@'符号给我带来了很多痛苦。