Websocket 省道延伸网箱

Websocket 省道延伸网箱,websocket,dart,Websocket,Dart,我试图通过扩展该类向WebSocket添加一个字段。我在编译时没有收到错误,但是当我尝试分配字段时,我得到一个“no-this-method:myCustomString”错误。下面的片段。感谢您的帮助 class WebSocketConnection2扩展了WebSocketConnection{ 字符串myCustomString=“”; } …用法 wsHandler.onOpen=(WebSocketConnection2连接){ conn.onMessage=(数据){ var事件

我试图通过扩展该类向WebSocket添加一个字段。我在编译时没有收到错误,但是当我尝试分配字段时,我得到一个“no-this-method:myCustomString”错误。下面的片段。感谢您的帮助

class WebSocketConnection2扩展了WebSocketConnection{
字符串myCustomString=“”;
}
…用法

wsHandler.onOpen=(WebSocketConnection2连接){
conn.onMessage=(数据){
var事件=数据['aString'];
开关(事件){
案例“someCase”:
conn.myCustomString=nName;//此行将抛出错误。
...
打破
}
};

这是因为
wsHandler
的实现类正在传递一个
WebSocketConnection
实例。它不知道您的
WebSocketConnection2

要使用
WebSocketConnection2
类,您需要提供自己的
wsHandler
实现


注意:虽然您指定了
wsHandler.onOpen=(WebSocketConnection2 conn){
但dart将其解释为
wsHandler.onOpen=(conn){
-这是可选的输入操作。

这可能是阅读可选类型的有用文章: