Angular2 双向绑定的问题

2016 年 9 月 1 日
 duxiaodong121
<x-test [show]="isShow" (show)="isShow=$event"></x-test>
@Component({
	selector: 'x-text'
})
class XText {
	@Input('show') show: boolean = false
	@Output('show') showChange: EventEmitter<boolean> = new EventEmitter()
	
	hide() {
		this.show = false
		this.showChange.emit(this.show)
	}
}

请问上面代码要怎么改动, html 才可以写成 <x-test [(show)]="isShow"></x-test>

3596 次点击
所在节点    问与答
6 条回复
duxiaodong121
2016 年 9 月 1 日
根本看不懂 V2EX 怎么排序的
WhoMercy
2016 年 9 月 1 日
Angular2 貌似看不懂了( ̄∀ ̄)……
crysislinux
2016 年 9 月 1 日
你应该让外部来改变 show 的值,而不是在内部改。
xjp
2016 年 9 月 1 日
改两个地方
1. <x-test [show]="isShow" (showChange)="isShow=$event"></x-test>
2. @Output() showChange: EventEmitter<boolean> = new EventEmitter()
xjp
2016 年 9 月 1 日
duxiaodong121
2017 年 1 月 5 日
@xjp 不是,我发的代码能工作,只是样子不好看,想写成 `[(show)]="isShow"` 的,简单的这样写是实现不了的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/303285

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX