actionscript - ejemplos - ¿Cómo puedo incluir algún archivo js en el archivo JSFL?
codigos actionscript 3.0 para flash (2)
Estoy usando JSFL para escribir algunos guiones, necesito parse json string de algunos archivos de configuración, así que necesito que el JSFL pueda analizar cadena JSON, pero JSFL parece que no puede hacer esto. entonces pienso incluir algunas json lib, como json.js, en el archivo JSFL.
¿De qué manera puedo incluir el archivo json.js en mi archivo JSFL?
Lo siento por mi ingles.
El mínimo absoluto sería:
// #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*/
Esto está más o menos copiado de mi código, incluidas las etiquetas JSL. Hago que las extensiones de cualquier biblioteca sean ._jsfl, de modo que si está en la carpeta Comandos de Flash, no aparecen en el menú.
Escribí un conjunto de clases estáticas (un sistema de registro, conversiones de URI, funciones de utilidad de matriz) y escribí una función de include
global utilizándolas para convertir automáticamente una ruta relativa a un URI absoluto basado en la ubicación de las secuencias de comandos en ejecución para poder decir include("file._jsfl");
para simplificar mis guiones SIN EMBARGO todas mis secuencias de comandos tienen que hacer eso primero incluir como se muestra arriba para obtener la función de include
. Como mi función de inclusión se basa en un puñado de clases estáticas, no la he pegado aquí.
Editar: error de ortografía
Si la biblioteca es local, puede almacenarla en una subcarpeta de su ruta de configuración de Flash, es decir,
C:/Users/username/AppData/Local/Adobe/Flash CS6/language/Configuration/jslibs
Entonces, es bastante fácil incluirlo en una sola línea:
fl.runScript(fl.configURI + "jslibs/file.js");