我正在使用JSFL编写一些脚本,我需要从一些配置文件解析json字符串,所以我需要JSFL可以解析json字符串,但JSFL似乎无法做到这一点。然后我想把一些json lib,比如json.js,包含在JSFL文件中。
我可以将json.js文件包含到我的JSFL文件中吗?
抱歉我的英文。
答案 0 :(得分:2)
绝对最低限度是:
// #include Config._jsfl
var scriptPath = FLfile.uriToPlatformPath(fl.scriptURI);
var scriptPathEnd = scriptPath.lastIndexOf("\\");
scriptPath = scriptPath.slice(0, scriptPathEnd + 1);
fl.runScript(FLfile.platformPathToURI(scriptPath + "Config._jsfl")); /*jsl:import Config._jsfl*/
这或多或少是从我的代码中复制的,包括JSL标签。我将任何库的扩展名设为._jsfl,这样如果它在Flash的Commands文件夹中,它们就不会显示在菜单中。
我写了一组静态类(一个Logging系统,URI转换,数组实用程序函数)并编写了一个全局include
函数,使用它们根据运行的脚本位置自动将相对路径转换为绝对URI所以我可以说include("file._jsfl");
来简化我的脚本。但是,我的所有脚本必须首先执行此操作,如上所示,以获得include
功能。由于我的include函数依赖于一些静态类,我没有在这里粘贴它。
编辑:拼写错误。
答案 1 :(得分:1)
如果库是本地的,您可以将其存储在Flash配置路径的子文件夹中,即
C:\Users\username\AppData\Local\Adobe\Flash CS6\language\Configuration\jslibs
然后,将它包含在一行中非常容易:
fl.runScript(fl.configURI + "jslibs/file.js");