Flex: Come posso utilizzare il @ContextRoot in un pulsante o LinkButton
-
26-09-2019 - |
Domanda
Sto cercando di creare un pulsante che semplicemente un collegamento alla root del contesto. Ho notato Flex ha un attributo @ContextRoot che sembra funzionare solo in determinati casi. Per esempio, se si tenta di utilizzare nel seguente MXML:
<mx:Button label="Back to Root" click="navigateToURL(new URLRequest(@ContextRoot()), '_parent')"/>
ottengo il seguente errore: Errore:. Gli attributi non sono callable
Non riesco a trovare questa tecnica spiegata da nessuna parte, c'è un altro modo?
Grazie per l'aiuto! Dave
Soluzione 2
Grazie alla http://devgirl.wordpress.com/ per questa soluzione! Credo che sia meglio che la soluzione Application.application.url:
Utilizzare il controllo HTTPService:
<mx:HTTPService id="home" url="@ContextRoot()"/>
E poi in Action Script:
navigateToURL(new URLRequest(home.url),"_parent");
funziona come un fascino!
Altri suggerimenti
Bene, il modo più pulito che ho trovato è stato quello di utilizzare una funzione nel blocco di script, e non utilizzare @ContextRoot come:
private function goBacktoHompage():void
{
baseURL = Application.application.url;
var tempUrl:String = baseURL.substr(7,baseURL.length);
var tempUrlArr:Array = tempUrl.split("/");
var contextRoot:String = tempUrlArr[1];
var u:URLRequest = new URLRequest("/" + contextRoot);
navigateToURL(u,"_parent");
}
Vorrei assumere c'è un modo più semplice che potrebbe usare @ContextRoot, in modo che qualsiasi altre risposte che non utilizzano i relativi percorsi sarebbero stati accolti!
Grazie a questi siti per l'aiuto:
http://blog.devsandbox.co.uk/?p=174
[Guida di Adobe documenti sul passaggio di argomenti]
-Dave