版本:"angular2":"2.0.0-beta.6"
我想在父/子组件案例中实现双向绑定.
在我的子组件上,我在编辑时使用双向绑定来显示文本.
子组件(InputTestComponent [selector:'input-test']):
<form (ngSubmit)="onSubmit()" #testform="ngForm">
{{name}}
<textarea #textarea [(ngModel)]="name" ngControl="name" name="name"></textarea>
<button type="submit">Go</button>
</form>
Run Code Online (Sandbox Code Playgroud)
然后,我想将此更改传播到其父组件.我试过[(name)]="name"没有成功.
父组件:
<div>
{{name}}
<input-test [(name)]="name"></input-test>
</div>
Run Code Online (Sandbox Code Playgroud)
最简单的方法是什么(不那么冗长)?
Angular 2:2.0.0-alpha.31/Typescript 1.5
我从http.get查询中请求了数据
this.http.get('/data/players.json')
.toRx()
.map((res) => res.json())
.subscribe((data) => {
this.players = data;
});
Run Code Online (Sandbox Code Playgroud)
这个查询返回给我这个Json对象(this.players)
[
{"team":"teamA","name":"player1","age":"1"},
{"team":"teamA","name":"player2","age":"1"},
{"team":"teamA","name":"player3","age":"1"},
{"team":"teamB","name":"player4","age":"1"},
{"team":"teamB","name":"player5","age":"1"}
]
Run Code Online (Sandbox Code Playgroud)
然后我想显示按团队分组的玩家
teamA: player1,player2,player3
teamB: player4,player5
Run Code Online (Sandbox Code Playgroud)
我如何groupBy team在Angular2上(直接进入@View?)?
UPDATE
我在Angular 1上看到了这个,可以在使用| groupBy:'propertyName'ngFor 的视图中完成.Angular 2上有这样的东西吗?
Angular 2:2.0.0-alpha.31/Typescript 1.5
目前我将我的服务管理为一个简单的Class,然后我将其Class注入另一个组件.例:
export class PlayerService {
http: Http;
players = [];
constructor( @Inject(Http) http) {
this.http = http;
}
getAll(callback) {
this.http.get('/data/players.json')
.toRx()
.map((res) => res.json())
.subscribe((data) => {
this.players= data;
callback(data);
});
}
add(player) {
//call webservice to save user
this.players.push(player); //only if save has work
}
delete(player) {
//Not implemented yet
}
get(id) {
//Not implemented yet
}
}
Run Code Online (Sandbox Code Playgroud)
我想,我这样做的方式不对..
http.get().toRx().subscribe()?我以为我看到有些人Observable直接从toRx()getAll()),则将执行两个查询.我必须管理旗帜还是有另一种方式?角度:2.0.0-beta.9
是否可以将非@Injectable类注入component?例如,此类可能来自第三方库.
Angular2:2.0.0-beta8
我想自定义一个指令。为了实现这一点,我创建了一个包含所有自定义参数的对象,并希望将其传递给模板,如下所示:
我的指令在模板中使用:
<div my-directive="{param1: 46, param2: 48}"></div>
Run Code Online (Sandbox Code Playgroud)
在我的指令中输入:
@Input('my-directive')
public conf: Configuration;
Run Code Online (Sandbox Code Playgroud)
参数对象定义:
export interface Configuration{param1;param2; ...}
Run Code Online (Sandbox Code Playgroud)
可悲的是,它不起作用。也许是Json解析的原因?
如何mousedragstart使用拖放 RxJs 的示例实现Observable 。
mousedragstart应该在第一个mousedrag之后的第一个mousedown之前发出,直到mouseup.
我认为我们必须玩flatMap/ take(1)/takeUntil(mouseup)但我每次都失败了..
更新
这里的困难不是避免mousedrag被发射之前mousedragstart