【发布时间】:2010-11-05 13:45:36
【问题描述】:
我正在使用一个 fla、一个 as 文件(文档类)和一个 jsfl 文件。 swf 在 WindowSWF 文件夹中生成(例如 $flash/WindowSWF)
我有一个简单的 windowSWF,我正在使用 MMExecute 和 fl.runScript 将变量从 as3 传递到 jsfl。我没想到如果我使用对象会遇到麻烦。
在我的 windowSWF 中,我有一个名为 settingsGrid 的 DataGrid,其中包含以下列: ["前缀","后缀","类型"] 我正在尝试将 settingsGrid.dataProvider.toArray() 传递给 jsfl 脚本。
问题是它在另一边显示为未定义。关于我如何解决这个问题的任何提示?
简短版本:如何将 {prefix:"value",suffix:"value",type:"value"} 等对象数组从 actionscript 传递到 jsfl。传递单个对象有效,传递数组时出现错误:
"Syntax Error: missing ] after element list"
我的函数调用如下所示:
MMExecute('fl.runScript(fl.configURI + "Commands/LazyGen.jsfl","generate","_",'+ settingsGrid.dataProvider.toArray() +');');
jsfl 文件中方法的签名如下所示:
function generate(prefixArg,settingsArg){}
【问题讨论】:
-
我没有发送 settingsGrid.dataProvider.toArray() 作为参数,而是构建了一个 jsfl 友好的脚本,循环遍历 dataProvider,然后将构建的字符串作为参数传递。如果有人觉得它很方便,好的,如果没有,我很乐意删除这个问题。
标签: flash actionscript-3 object jsfl