EventEmitter 已弃用,不应使用
EventEmitter is deprecated and shouldn't be used
在 AngularDart 3.0.0 中,EventEmitter 已被弃用。那么,如何从子组件向父组件发送事件呢?
更新前看起来像:
@Component(
selector: 'my-test',
templateUrl: 'test.component.html'
)
class TestComponent {
@Input()
String name = '';
@Output()
EventEmitter<String> onNameChange = new EventEmitter<String>();
}
...
onNameChange.emit('New Name');
...
现在我需要使用 Stream 和 StreamController。有人可以举个例子吗?
就用普通的StreamController
final _onNameChangeController = new StreamController<String>.broadcast();
@Output()
Stream<String> get onNameChange => _onNameChangeController.stream;
.broadcast
是可选的。需要允许多个订阅者。
另见 https://www.dartlang.org/articles/libraries/broadcast-streams
在 AngularDart 3.0.0 中,EventEmitter 已被弃用。那么,如何从子组件向父组件发送事件呢?
更新前看起来像:
@Component(
selector: 'my-test',
templateUrl: 'test.component.html'
)
class TestComponent {
@Input()
String name = '';
@Output()
EventEmitter<String> onNameChange = new EventEmitter<String>();
}
...
onNameChange.emit('New Name');
...
现在我需要使用 Stream 和 StreamController。有人可以举个例子吗?
就用普通的StreamController
final _onNameChangeController = new StreamController<String>.broadcast();
@Output()
Stream<String> get onNameChange => _onNameChangeController.stream;
.broadcast
是可选的。需要允许多个订阅者。
另见 https://www.dartlang.org/articles/libraries/broadcast-streams