Flex错误:未找到类型或不是编译时常量

时间:2009-02-18 20:16:36

标签: flex

我的flex代码中出现以下错误。任何想法如何解决这个问题?

<mx:Script>
    <![CDATA[
        private function send_data():void {
            userRequest.send();
        }
    ]]>
</mx:Script>
<mx:Form x="22" y="10" width="493">
    <mx:HBox>
        <mx:Label text="UserId"/>
        <mx:TextInput id="userid"/>
    </mx:HBox>
    <mx:HBox>
        <mx:Label text="Ip Address"/>
        <mx:TextInput id="ip"/>
    </mx:HBox>
    <mx:Button label="Submit" click="send_data()"/>
</mx:Form>
<mx:DataGrid id="dgUserRequest" x="22" y="128" dataProvider="{userRequest.lastResult.users.user}">
    <mx:columns>
        <mx:DataGridColumn headerText="User ID" dataField="userid"/>
        <mx:DataGridColumn headerText="User Name" dataField="ip"/>
    </mx:columns>
</mx:DataGrid>
<mx:TextInput x="22" y="292" id="selectedemailaddress"
    text="{dgUserRequest.selectedItem.emailaddress}"/>
<mx:HTTPService id="userRequest" url="http://localhost/post.php" useProxy="false" method="POST" resultFormat="e4x">
    <mx:request xmlns="">
        <userid>{userid.text}</userid>
        <ipaddress>{ip.text}</ipaddress>
    </mx:request>
</mx:HTTPService>

Type was not found or was not a compile-time constant: data.
[Generated code (use -keep to save): Path: data-generated.as, Line: 245, Column: 14]

4 个答案:

答案 0 :(得分:4)

打开项目的属性对话框,然后转到“编译”部分。在“编译器参数”文本框中,添加:

-keep-generated-actionscript

编译后,名为“generated”的文件夹将位于您的应用程序目录(或可能是bin目录)中。打开data-generated.as并使用第245行附近的代码更新原始问题。

完成后,我们可以为您提供进一步的帮助。

编辑:是否有data.mxml文件?如果您的文件名为test.mxml,我发现错误来自data-generated.as很奇怪

答案 1 :(得分:0)

我的猜测是你从post.php返回的xml并不是你所期望的。

尝试在flexcoders

上发布此问题

答案 2 :(得分:0)

您使用的是Flex Builder吗?在这种情况下,它会向你显示右边误差线上的小红点。如果你:

通常会发生这种错误
  • 使用没有import的标准组件 - 包/类(这可以通过使用IDE的自动类型填写来添加必要的import语句来轻松修复)
  • 忘记声明变量/导入自己的类

答案 3 :(得分:0)

或者您的库可能与SDK版本不兼容