0

クラスを拡張して WebSockets にフィールドを追加しようとしています。コンパイル中にエラーは発生しませんが、フィールドを割り当てようとすると、「no such method: 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;
  }
};
4

1 に答える 1

2

これは、の実装クラスがインスタンスwsHandlerを渡しているためです。それはあなたのクラスWebSocketConnectionについて知りません。WebSocketConnection2

クラスwsHandlerを使用するには、の独自の実装を提供する必要があります。WebSocketConnection2

注:wsHandler.onOpen = (WebSocketConnection2 conn) {これはdartによって次のように解釈されるように指定しましたが、wsHandler.onOpen = (conn) {これはオプションの入力操作です。

于 2013-01-22T20:11:33.850 に答える