Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex Flex:如何在按钮或链接按钮中使用@ContextRoot_Apache Flex_Url_Button_Hyperlink_Contextroot - Fatal编程技术网

Apache flex Flex:如何在按钮或链接按钮中使用@ContextRoot

Apache flex Flex:如何在按钮或链接按钮中使用@ContextRoot,apache-flex,url,button,hyperlink,contextroot,Apache Flex,Url,Button,Hyperlink,Contextroot,我正在尝试创建一个按钮,它将简单地链接回上下文根。我注意到flex有一个@ContextRoot属性,它似乎只在某些情况下起作用。例如,如果我尝试在以下mxml中使用它: <mx:Button label="Back to Root" click="navigateToURL(new URLRequest(@ContextRoot()), '_parent')"/> 我得到以下错误:错误:属性不可调用 我似乎在任何地方都找不到解释这种技术的方法,有其他方法吗 谢谢你的帮助! D

我正在尝试创建一个按钮,它将简单地链接回上下文根。我注意到flex有一个@ContextRoot属性,它似乎只在某些情况下起作用。例如,如果我尝试在以下mxml中使用它:

<mx:Button label="Back to Root" click="navigateToURL(new URLRequest(@ContextRoot()), '_parent')"/>

我得到以下错误:错误:属性不可调用

我似乎在任何地方都找不到解释这种技术的方法,有其他方法吗

谢谢你的帮助!
Dave

嗯,我发现的最干净的方法是在脚本块中使用函数,而不是像下面那样使用@ContextRoot:

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");
 }
我认为有一种更简单的方法可以使用@ContextRoot,所以任何其他不使用相对路径的答案都会受到欢迎

感谢这些网站的帮助:

[关于传递参数的Adobe帮助文档]

-Dave

感谢您提供此解决方案!我认为它比Application.Application.url解决方案更好:

使用HTTPService控件:

<mx:HTTPService id="home" url="@ContextRoot()"/> 

工作起来很有魅力

你是否正在尝试实施状态管理并链接回应用程序的初始状态,而不重新加载swf?不,我有一个应用程序,它有更多的部分,而不仅仅是flex部分-因此,我基本上要回到一个主页排序。谢谢你的回复!!顺便提一下我的编译设置中确实有上下文根设置,所以这是可行的:。。。只是想不出如何把它变成一个干净的链接。
 navigateToURL(new URLRequest(home.url),"_parent");