我可以在某种形式的动作中使用 include 吗?
var somevar = include "file.json";
其中“file.json”包含JSON数据
答案 0 :(得分:8)
这不是那么简单,但可能。首先,您必须按原样嵌入JSON文件:
[Embed(source = 'file.json', mimeType='application/octet-stream')]
private static const YourJSON:Class;
然后,要获取嵌入的内容(String,Bitmap,SWF),您需要使用此类型实例化变量。
var somevar:String=new YourJSON();
然后你需要解析JSON,正确的语法因JSON和解析库而异(这部分主要取决于你的Flash播放器目标)。 RafH的答案有一个阵列和(IIRC)FP10兼容库的语法。
答案 1 :(得分:4)
也可以使用ASC 2.0。 (来自here) 新语法允许您使用:
var h:Object = include 'conf.json'; // where conf.json contains correct JSON
答案 2 :(得分:0)
不,include
不返回值,包含在编译时完成,因此如果包含文件的内容发生更改,则需要重新编译swf。
不确定你想要做什么,但似乎加载/解析外部JSON数据文件是一种更好的查找方法。
以下是一个很好的例子:http://snipplr.com/view/56283/