今天搞了下ActionScript中的namespace,官方的例子我只改了下名称就出现了这样的错误:1004: namespace 要么找不到,要么不是编译时常数。官方的错误记录解释的真够仔细:
该命名空间未知,或是运行时可能具有不同值的表达式。检查命名空间的拼写及其定义的导入是否正确。
我都想骂娘了,这和控制台的输出有什么两样嘛~不过仔细想来,我的错误就在其中所指了,我定义的ActionScript文件是myspace,注意是文件不是类啊。文件中的内容为一个公共的命名空间:
package example { public namespace myspace = "http://www.adobe.com/2006/actionscript/examples"; }
这很合乎规范嘛,文件名第一个字母大写,属性名第一个字母小写,说不定你就犯了这个错误!把文件中的public namespace myspace 改成 public namespace myspace,就搞定了。