actionscript 3 で SWFAddress を使用して、ナビゲーションとコントロールの URL を制御しています。特定のパラメーターをターゲットにして変更することはできますが、それを処理するためのよりクリーンで一貫した方法が欠けているように感じます。認識していません。
URL があり、defの 2 番目のパラメーターだけをxyzに変更したいとします。
http://localhost/some-page/#/?param1=abc¶m2=def¶m3=ghi
に変更
http://localhost/some-page/#/?param1=abc¶m2=xyz¶m3=ghi
私は現在やっています:
if (SWFAddress.getParameterNames().indexOf("param2") >= 0) {
SWFAddress.setValue(SWFAddress.getPath() + "?"
+ SWFAddress.getQueryString().replace("param2=" + SWFAddress.getParameter("param2"), "param2=xyz"))
基本的に、パラメーターが存在するかどうかを確認し、その現在の値が何であるかを確認してから、base、 '?" 、およびqueryを使用して URL 全体を再作成し、パラメーターとパラメーターの値を確実に置き換えて、見逃さないようにします等号.これはずさんで、paramが存在するが何も設定されていない場合、または等号があるかどうか、および他の多くの落とし穴がある場合、エラーが発生しやすくなります。
では、SWFAddress に URL のその 1 つのパラメーターを更新するように指示することはできませんか? SWFAddress.setParam("param2, "xyz") の理論上の関数。
setValue(val:String) の単一の関数を提供するだけでなく、SWFAddress と URL を微調整する独自のメソッドをコーディングした人はいますか?