2

リモート フレックス SharedObject があり、(Red5 を使用して) すべてのクライアントにメッセージと、ユーザー/送信者データを含むオブジェクトを送信しようとしています。

問題は次のとおりです。クライアントに表示される値は、クライアントに保存されている値であり、SO の値ではありません。

いくつかのコードを次に示します。

protected function btSend_clickHandler(event:MouseEvent):void
{               
    soChat.setProperty("msg",tiMessage.text);
    soChat.setProperty("userVO",modtrackModel.userVO);
    tiMessage.text = "";        

}

private function syncListener(event:SyncEvent):void
{
    for(var i:Object in event.changeList) {
        var changeObj:Object = event.changeList[i];

        switch(changeObj.name) {
            case "msg":                 
               newMessage(event.target.data["userVO"].userName);                                                                                        
               break;

        }
    }
}


public function newMessage( msg:String):void
{           
    Alert.show(msg);
}

問題は、ブラウザ A で Ricardo として、ブラウザ B で Rodrigo としてログに記録された場合、アラートはブラウザ A で Ricardo を、ブラウザ B で Rodrigo を表示するということです。SO に設定された最後の値が表示されるはずですよね?

助けを求めてTyと私の下手な英語をsryしてください。

4

1 に答える 1

0

ここで msg 値を定義しています。

newMessage(event.target.data["userVO"].userName);  

アラートに表示するユーザー名情報を取得しています。それを表示したい値に変更する必要があります。

于 2012-10-31T12:44:05.923 に答える