从本教程 http://www.brighthub.com/internet/web-development/articles/11010.aspx
我找到了下面的代码.有没有办法打破这个,所以mxml文件只有mxml,脚本标签之间的代码放在一个动作脚本文件中?

谢谢.

-缺口

<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute"
    width="600"
    height="400"
    frameRate="100"
    creationComplete="CreationComplete()"
    enterFrame="EnterFrame(event)">
    <mx:Script><![CDATA[
        public function CreationComplete():void
        {

        }

        public function EnterFrame(event:Event):void
        {

        }
    ]]></mx:Script>
</mx:Application>

解决方法

在Flex中有几种实现这一点的方法:

>将AS代码放在.as文件中,并使用“source = yourfile.as”attribute in the Script tag:

< mx:Script source =“yourfile.as”/>

您还可以在Script标签中使用includes =“yourfile.as”声明:

<mx:Script
    <![CDATA[
        include "yourfile.as";

        //Other functions
    ]]>
</mx:Script>

>使用Code-Behind模式,在AS文件中定义代码,扩展您希望MXML文件扩展的可视化组件.然后,您的MXML文件简单扩展了AS文件,并且(通过继承)访问所有代码.它看起来像这样(我不知道这是否适用于扩展应用程序的主要MXML文件):

AS文件:

package {
    public class MainAppClass {
        //Your imports here
        public function CreationComplete():void {
        }
        public function EnterFrame(event:Event):void {
        }
    }
}

MXML文件:

<component:MainAppClass xmlns:component="your namespace here"
                        xmlns:mx="http://www.adobe.com/2006/mxml"
                        layout="absolute"
                        width="600"
                        height="400"
                        frameRate="100"
                        creationComplete="CreationComplete()"
                        enterFrame="EnterFrame(event)">
</component:MainAppClass>

>使用框架将您要查找的功能注入为包含要使用的数据功能的“模型”类型.在欧芹中看起来像这样:

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
            layout="absolute"
            width="600"
            height="400"
            frameRate="100"
            creationComplete="model.CreationComplete()"
            enterFrame="model.EnterFrame(event)">

            <mx:Script>
                <![CDATA[
                    [Inject]
                    [Bindable]
                    public var model:YourModelClass;
                ]]>
           </mx:Script>
   </mx:Application>

可以帮助注射的两个框架是Mate或Parsley.

我不知道代码隐藏模式是否与主要的MXML文件(扩展了应用程序)一起使用,因此如果您遇到问题,您可以尝试将主MXML文件中的内容分解为包含的单独组件在主.它可能看起来像这样:

Main.mxml:

<mx:Application blah,blah,blah>
    <component:YourComponent />
</mx:Application>

YourComponent.mxml:

<component:YourComponentCodeBehind creationComplete="model.creationComplete()"...>
  //Whatever MXML content you would have put in the Main file,put in here
</component:YourComponentCodeBehind>

YourComponentCodeBehind.as

package {
    class YourComponentCodeBehind {
        //Whatever AS content you would have put in the Main .as file,put in here
    }
}

从Flex架构中可以收集到的内容,这是设置应用程序的一种非常常见的方法:您的主MXML包含一个“视图”,它是应用程序其余部分的入口点.此视图包含构成应用程序的所有其他视图.

希望有意义:)

flex – 分离MXML和Actionscript的更多相关文章

  1. DOMXML函数笔记

    >因此需要改造成这样,可能需要*utf8_encode()utf8_decode()函数进行处理**函数列表*stringdomxml_version返回domxml的版本号*objectxmldoc从字符串创建XML的Domdocument对象*objectxmldocfile从文件创建XML的Domdocument对象*objectxmltree解析xml文档,返回树状结构,不能用domxml函数改变*resourcedomxml_add_root添加根节点*stringdomxml_dumpmem将

  2. ubuntu – 什么是MX记录以及如何为具有多个域的邮件服务器配置此记录?

    在我的基于Ubuntu10.4的虚拟服务器上,我想发送和接收多个域的电子邮件.作为第一步,似乎我必须正确配置MX记录.因为我对此很陌生:什么是MX记录?对于处理domain1.com,domain2.com的邮件服务器,它们看起来如何?

  3. 在从Exchange 2010到365的转换迁移期间,如何处理桌面客户端?

    或者他们可以简单地删除旧的和旧的一切将立即同步到新的?

  4. mx-record – 如果PHP mail()邮件服务器不是FROM域的MX,会出现任何问题吗?

    假设我有这种情况:我的电子邮件地址me@company.com的邮件服务器托管在我的办公室.我的网站company.com由第三方网络托管公司托管.在我的网站上,我创建了一个使用FROM,TO,SUBJECT,BODY并使用PHPmail()发送给客户.由于Web服务器是第三方,PHPmail()使用localhost邮件服务器.我认为我的邮件将到达客户的邮件服务器并显示为“伪造”或垃圾邮件.我需要做些什么来确保我的邮件看起来合法,并且收到的邮件不会发送到第三方网络托管服务商?

  5. Flex警告:无法绑定到类“Object”上的属性“foo”(类不是IEventDispatcher)

    我的容器对象的定义:currentLink在运行时被分配到ArrayCollection的特定索引,我主要使用emptyLink对象进行初始化。当然,这个编译和显示很好,但每个实例都有运行时警告:warning:unabletobindtoproperty‘trigger1’onclass‘Object’warning:unabletobindtoproperty‘trigger2’onclass‘Object’warning:unabletobindtoproperty‘trigger3’onclass

  6. flex – 通过MXML扩展MXML自定义组件

    我想做什么:创建一个MXML组件与一些孩子,然后通过MXML扩展它创建一个新的组件与更多的孩子,而不会丢失原始集.换一种说法创建一个组件bc.mxml然后将其扩展到单独的组件mc.mxml并使用2个按钮获取组件.我已经看到了关于这是不可能的或解决方法来完成这个(2,3)的各种线程,并且一直在想,如果有什么变化随着Flex4的出现,或者如果我们仍然坚持这些解决方法在线程3中的最后一个回复似乎暗示Flex4修复了所有?

  7. 在DataGrid中使用验证器 – Flex

    我有一个可编辑的DataGrid,类似于:当用户编辑数据时,他点击了一个按钮并调用一个将数据保存到数据库的功能,在此功能中我必须在发送数据之前验证数据.我想使用简单的验证器,但我不知道如何将此验证器的源设置为第二列中的指定行.解决方法将validator的属性设置为所需列的datafield.

  8. Flex 4中的Halo和Spark有什么用?

    我使用了Flex2/3几年,刚刚回到它,升级到Flex4.我看到一些Halo和Spark主题的参考,但我从未在我以前的工作中涉及主题,所以我是一个有点混淆发生了什么.我是否认为Halo是默认主题,还是全新的?

  9. 如何根据多列对flex数据网格进行排序?

    我有一个datagrid,填充如下所示.当用户单击列标题时,我想使用词典排序对行进行排序,其中首先使用所选列,然后以从左到右的顺序使用其余列来打破任何关系.我该如何编码呢?(我有一个答案,我将在下面发布,但它有一个问题–如果有人能提供更好的答案,我会很激动!

  10. 任何Flex 4迁移体验?

    Flex4有什么问题吗?DCD如何适合配偶事件图.我知道最好自己尝试一下,但我只是想检查一下有没有人尝试迁移Flex4.如果有的话,有什么问题吗?你注意到生产力的提高吗?

随机推荐

  1. arcgis api for flex之专题图制作饼状图,柱状图等

    总结以上是DEVMAX为你收集整理的arcgisapiforflex之专题图制作饼状图,柱状图等全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  2. arcgis for flex或silverlight全国地图天气预报的实现

    总结以上是DEVMAX为你收集整理的arcgisforflex或silverlight全国地图天气预报的实现全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  3. 天津政府应急系统之GIS一张图arcgis api for flex讲解十一路径导航模块

    总结以上是DEVMAX为你收集整理的天津政府应急系统之GIS一张图arcgisapiforflex讲解十一路径导航模块全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  4. arcgis for flex全国地图天气预报的具体实现过程解析

    总结以上是DEVMAX为你收集整理的arcgisforflex全国地图天气预报的具体实现过程解析全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  5. 天津政府应急系统之GIS一张图arcgis api for flex讲解四地图导航控件模块

    总结以上是DEVMAX为你收集整理的天津政府应急系统之GIS一张图arcgisapiforflex讲解四地图导航控件模块全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  6. BlazeDS

    总结以上是DEVMAX为你收集整理的BlazeDS全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  7. 【Flex】读取本地XML,然后XML数据转成JSON数据

    总结以上是DEVMAX为你收集整理的读取本地XML,然后XML数据转成JSON数据全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  8. 【Flex】读取本地JSON,然后JSON数据转成XML数据

    总结以上是DEVMAX为你收集整理的读取本地JSON,然后JSON数据转成XML数据全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  9. 【Flex】编辑器的缩放功能绝对定位和相对定位

    总结以上是DEVMAX为你收集整理的编辑器的缩放功能绝对定位和相对定位全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  10. 如何实现一个自己的嵌入式语言y

    总结以上是DEVMAX为你收集整理的如何实现一个自己的嵌入式语言y全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

返回
顶部