嗨,我有一点 Angular 1 的背景,现在正在学习 Angular 2。
要开始使用 Angular 1,唯一的依赖是添加 angular 源代码,可以是 angular.js
或 angular.min.js
。
但如果想通过脚本标签试用 Angular 2,则:
<script src="angular2.js"></script>
我遇到了以下错误:
Uncaught ReferenceError: System is not defined
Uncaught ReferenceError: define is not defined
于是我在搜索引擎上查找后发现,在加载angular2
之前必须添加并加载system.js
和require.js
。
无论如何,我成功加载了这两个库。
我喜欢编译TypeScript并提供js
文件而不是将所有脚本发送给客户端并在客户端进行编译/转换。
我的IDE是WebStorm,当我尝试编写一个简单的组件时,
import {Component} from 'angular2/core';
@Component
class Hello{
name:string;
constructor() {
this.name = "HelloWorld";
}
}
我在 TypeScript 编译器中的 main.ts
文件上遇到了这个错误,它会编译成 main.js
文件。
Error:(1, 25) TS2307: Cannot find module 'angular2/core'.
TypeScript 能编译所有东西,但无法从 Angular 中导入。
我的简单 index.html
如下所示,
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Hello World</title>
</head>
<body>
<script src="system.js"></script>
<script src="require.js"></script>
<script src="angular2.js"></script>
<script src="main.js"></script>
</body>
</html>
为什么TypeScript无法从Angular2导入模块? 我是否需要使用Angular2配置TypeScript?
我完全不了解TypeScript,
非常感谢任何帮助
更新
tsc main.ts --watch输出:
main.ts(1,25): error TS2307: Cannot find module 'angular2/core'.
main.ts(4,7): error TS1219: Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option to remove this warning.
11:43:39 PM - Compilation complete. Watching for file changes.
tsc
进行编译,有什么问题吗?[tsc filename.ts --watch]
- Pardeep Jain-m amd -t ES5 --experimentalDecorators
配置了tsc。 - user5170375