gpt4 book ai didi

typescript - 模块 '"angular2/angular 2"' 没有导出成员 'For'

转载 作者:太空狗 更新时间:2023-10-29 17:16:50 29 4
gpt4 key购买 nike

我正在学习 Angular2 官方网站上的教程。

https://angular.io/docs/js/latest/guide/displaying-data.html

这是我的 .ts 文件:

/// <reference path="typings/angular2/angular2.d.ts" />
import {Component, View, bootstrap, For} from 'angular2/angular2';

@Component({
selector: 'display'
})
@View({
template: '<p>name: {{myName}}</p>' +
'<p>Friends:</p>' +
'<ul>'+
'<li *for="#name of names">'+
'{{name}}'+
'<li>'+
'<ul>',
directives: [For]
})
class DisplayComponent{
myName: string;
names: Array<string>;

constructotr(){
this.myName = "Alice";
this.names = ["Winston", "Alex", "Shannon", "Irizu"];
}
}

bootstrap(DisplayComponent);

这是我的 html:

<html>
<head>
<script src="https://github.jspm.io/jmcriffey/bower-traceur-runtime@0.0.87/traceur-runtime.js"></script>
<script src="https://jspm.io/system@0.16.js"></script>
<script src="https://code.angularjs.org/2.0.0-alpha.23/angular2.dev.js"></script>
</head>
<body>
<display></display>
<script>
System.import('show-properties');
</script>
</body>

</html>

我已经安装了 angular2、Rx 和 es6-promise。

错误依旧。

message TS6042: Compilation complete. Watching for file changes. message TS6032: File change detected. Starting incremental compilation... show-properties.ts(2,37): error TS2305: Module '"angular2/angular2"' has no expo rted member 'For'. message TS6042: Compilation complete. Watching for file changes.


更新

这是我更新的 .ts 代码:

/// <reference path="typings/angular2/angular2.d.ts" />
import {
ComponentAnnotation as Component,
ViewAnnotation as View, bootstrap, NgFor
} from 'angular2/angular2';



@Component({
selector: 'display'
})
@View({
template: '<p>name: {{myName}}</p>' +
'<p>Friends:</p>' +
'<ul>'+
'<li *ng-for="#name of names">'+
'{{name}}'+
'<li>'+
'<ul>',
directives: [NgFor]
})
class DisplayComponent{
myName: string;
names: Array<string>;

constructotr(){
this.myName = "Alice";
this.names = ["Winston", "Alex", "Shannon", "Irizu"];
}
}

bootstrap(DisplayComponent);

angular2.d.ts 仍然是 alpha 26。

现在没有错误信息,我可以看到

姓名: friend :

但是没有插入任何值。我收到一条错误消息:

show-properties.ts(7,2): error TS2348: Value of type 'typeof ComponentAnnotation ' is not callable. Did you mean to include 'new'? show-properties.ts(10,2): error TS2348: Value of type 'typeof ViewAnnotation' is not callable. Did you mean to include 'new'? message TS6042: Compilation complete. Watching for file changes.

最佳答案

您的问题是文档不同步。如果您最近按照文档进行安装,那么它会安装最新版本 alpha26 的类型,其中有很多损坏的更改。文档使用带有该版本代码的 a23 版本。你也可以

1) 将您的类型更新为与 v23 匹配的旧版本,您可以 find it here .复制内容并将其替换为 ./typings/angular2/angular2.d.ts.

2) 将您的 Angular 脚本升级到 alpha 26并修复几件事。

  • For 现在是 NgForIf 现在是 NgIf
  • *for 现在是 *ng-for*if 现在是 *ng-if .. .
  • injectables(如果您打算在指令设置中使用)现在是 appInjector

  • 使用相同的 tsd 查询 xxx 为 es6-promiserxrx-lite 安装类型 --操作安装命令。

    Demo - 23

    Demo - 26

您还可以使用来自 angular-class webpack starter 的启动.

关于typescript - 模块 '"angular2/angular 2"' 没有导出成员 'For',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30770222/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com