我正在尝试通过扩展类来向WebSockets添加字段。编译时我没有收到错误,但是当我尝试分配字段时,我得到一个'没有这样的方法:myCustomString'错误。下面的片段。任何帮助表示赞赏。
class WebSocketConnection2 extends WebSocketConnection {
String myCustomString = "";
}
...使用
wsHandler.onOpen = (WebSocketConnection2 conn) {
conn.onMessage = (data) {
var event = data['aString'];
switch (event) {
case 'someCase':
conn.myCustomString = nName; // This line throw the error.
...
break;
}
};
答案 0 :(得分:2)
这是因为wsHandler
的实现类正在传递WebSocketConnection
实例。它不了解您的WebSocketConnection2
课程。
您需要提供自己的wsHandler
实施方案才能使用WebSocketConnection2
课程。
注意:虽然您已指定wsHandler.onOpen = (WebSocketConnection2 conn) {
,但这被dart解释为wsHandler.onOpen = (conn) {
- 这是可选的输入操作。